草庐IT

蓝桥杯【答疑】

蓝桥杯【答疑】题目描述分析这是一个贪心算法,要所得的时刻之和最小,而且下一个同学需要等上一个同学结束以后才能进行,因此需要对所耗总时间进行有小到大的排序,总时间相同的同学则对前两步时间之和有小到大进行排序,最后算出时间之和即可。代码importjava.util.Arrays;impo

LeetCode - 三数之和

题目信息源地址:三数之和给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0,请你找出所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。提示信息示例1输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例2输入:nums=[]输出:[]示例3输入:nums=[0]输出:[]限制0-105实现逻辑暴力枚举最先想到的应该是暴力枚举的方法,当然这也是最简单的的方法。既然这里要找出符合要求的三个数,当然是使用三层循环依次去匹配,缺点就是时间复杂度达到了\(O(n^3)\),当数组长度特别长的时候,程序

LeetCode - 三数之和

题目信息源地址:三数之和给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0,请你找出所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。提示信息示例1输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例2输入:nums=[]输出:[]示例3输入:nums=[0]输出:[]限制0-105实现逻辑暴力枚举最先想到的应该是暴力枚举的方法,当然这也是最简单的的方法。既然这里要找出符合要求的三个数,当然是使用三层循环依次去匹配,缺点就是时间复杂度达到了\(O(n^3)\),当数组长度特别长的时候,程序

leetcode 15. 3Sum 三数之和(中等)

一、题目大意给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]解释:nums[0]+nums[1]+nums[2]=(-1)+0+1=0。nums[1]+nums[2]+nums[4]=0+1+(-1)=0。nums[0]+nums[3]+nums[4]=(-1)+2+(-1)=0。

leetcode 15. 3Sum 三数之和(中等)

一、题目大意给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。请你返回所有和为0且不重复的三元组。注意:答案中不可以包含重复的三元组。示例1:输入:nums=[-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]解释:nums[0]+nums[1]+nums[2]=(-1)+0+1=0。nums[1]+nums[2]+nums[4]=0+1+(-1)=0。nums[0]+nums[3]+nums[4]=(-1)+2+(-1)=0。

LeetCode使用JavaScript破解两数之和

有人相爱,有人夜里开车看海,我是leetcode第一题都做不出来题目给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。方式一:暴力破解第一眼看到这个问题时,想到的解题方法就是使用for循环,两个for循环进行遍历,每一项进行相加,当等于target时,就可以返回他们的下标vartwoSum=functi

LeetCode使用JavaScript破解两数之和

有人相爱,有人夜里开车看海,我是leetcode第一题都做不出来题目给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。方式一:暴力破解第一眼看到这个问题时,想到的解题方法就是使用for循环,两个for循环进行遍历,每一项进行相加,当等于target时,就可以返回他们的下标vartwoSum=functi

代码随想录算法训练营第六天|242、有效的字母异位词|349、两个数组的交集|202、快乐数|1、两数之和

(day5休息调整->day6)day6  主要内容:哈希表哈希表是根据关键码的值而直接进行访问的数据结构。有数组、set(集合)、map(映射)三种数据结构哈希表用来快速判断一个元素是否出现在集合里。242、有效的字母异位词·数组哈希表用数组++--就完事题目链接:https://leetcode.cn/problems/valid-anagram/思路:数组哈希表存放26个字母的出现次数   数组下标为[字符串-‘a']   第一串字符对应的数组值++   第二串字符对应的数组值--   若有数组值不为0则不是字母异位词代码实现:数组哈希表     时间复杂度O(n)     空间复杂度O

代码随想录算法训练营第六天|242、有效的字母异位词|349、两个数组的交集|202、快乐数|1、两数之和

(day5休息调整->day6)day6  主要内容:哈希表哈希表是根据关键码的值而直接进行访问的数据结构。有数组、set(集合)、map(映射)三种数据结构哈希表用来快速判断一个元素是否出现在集合里。242、有效的字母异位词·数组哈希表用数组++--就完事题目链接:https://leetcode.cn/problems/valid-anagram/思路:数组哈希表存放26个字母的出现次数   数组下标为[字符串-‘a']   第一串字符对应的数组值++   第二串字符对应的数组值--   若有数组值不为0则不是字母异位词代码实现:数组哈希表     时间复杂度O(n)     空间复杂度O

代码随想录算法训练营第七天|454、四数相加Ⅱ|383、赎金信|15、三数之和|18、四数之和

454、四数相加Ⅱ·map哈希表当初不知四数相加的好,做完四数之和发现~oh这题真简单题目链接:https://leetcode.cn/problems/4sum-ii/前提:计算四个数组中多少个元组满足条件(值可以重复)思路:四个数组分别两两相加|时间复杂度O(n^2)   前两个数组相加的值作为map的键   map中查找等于(0-后两个数组相加的值)的键   找到则+该键值(这个值可能大于一)代码实现:unordered_map哈希表     时间复杂度O(n^2)     空间复杂度O(n)classSolution{public:intfourSumCount(vector&nums