- 博客(10)
- 收藏
- 关注
原创 LeetCode面试经典150题--第八题:买卖股票的最佳时机Ⅱ(Java)
定义一个变量最大利润初始化为0,从1索引开始遍历数组,如果当前元素比前一个元素大,求出利润累加到最大利润上。
2024-02-17 10:47:17
508
1
原创 LeetCode面试经典150题--第七题:买卖股票的最佳时机(Java)
遍历数组,如果当前元素小于最小值就更新最小值为当前元素,如果当前元素减去最小值得到的值(利润)大于最大利润,更新最大利润的值。遍历结束就得到了最大利润。定义一个最小值初始化为数组的第一个元素,定义最大利润初始化为0。遍历数组,更新最小值和最大利润。
2024-01-23 20:04:27
462
1
原创 LeetCode面试经典150题--第六题:轮转数组(Java)
先进行两个初始判断,第一个如果数组的长度为1或者k为0直接return(此时数组不会发生变化)。第二个如果k大于数组的长度,通过 k = k % nums.length 化简k的值(把轮转的整圈去掉)。定义一个临时数组temp,最后进行三次拷贝,将nums的前组拷贝到temp的后半部分,将nums的后组拷贝到temp的前半部分,最后将temp拷贝到nums数组即可。利用轮转k个位置,将数组nums分为两组,通过拷贝完成。
2024-01-22 19:42:29
402
原创 LeetCode面试经典150题--第五题:多数元素-摩尔投票算法(Java)
从第二个元素循环遍历,如果当前元素和候选人一样则投票数+1,如果不一样且投票数大于零的时候投票数-1,如果不一样且投票数为零时,重置候选人为当前元素,投票数为1。当指针指向第一个元素时,候选人为:1,得票数为:1,当指针指向第二个元素时,候选人为:1,得票数为:0,当指针指向第三个元素时,候选人为:3,得票数为:1,当指针指向第四个元素时,候选人为:3,得票数为:2,当指针指向第五个元素时,候选人为:3,得票数为:1,当指针指向第七个元素时,候选人为:3,得票数为:1,
2024-01-22 18:32:05
781
原创 LeetCode面试经典150题--第四题:删除有序数组中的重复项Ⅱ(Java)
定义一个指针i指向nums数组的零索引,增强for遍历数组,如果是数组的前两位就直接放到前两个位置并且i++,后面的元素如果不等于前面放好的nums[i-2]的这个元素(因为相同的元素只能出现两次),就依次放到后面。遍历nums数组,将重复不超过两次的元素直接依次重新放到原nums数组。
2024-01-22 17:37:23
420
原创 LeetCode面试经典150题--第三题:删除有序数组中的重复项(Java)
循环遍历nums数组,如果nums的元素不等于temp中j指向的元素,先移动指针指向下一个位置,让temp[j] = nums[i],同时覆盖nums中j索引的元素,即nums[j] = nums[i]。定义一个临时数组,初始化0索引的元素和nums一致。从索引1开始循环遍历nums数组,与temp不同的直接存到temp数组中,同时也从nums数组索引1开始覆盖。定义一个临时数组temp,初始化0索引的元素等于nums的0索引元素。定义一个指针j指向temp的0索引位置。
2024-01-11 16:22:58
399
1
原创 大学生免费领取阿里云服务器!
aliyunbaike.com/url/studenthttps://link.zhihu.com/?target=https%3A//www.aliyunbaike.com/url/student/
2024-01-11 15:28:03
594
1
原创 LeetCode面试经典150题--第一题:合并两个有序数组(Java)
在死循环中进行判断,如果start1==m意味着temp数组中的元素都覆盖到了nums1中,所以直接将nums2中剩余的元素拷贝到nums1剩余的位置中。同理start2==n的情况也是一样的。定义一个临时数组temp,长度为m+n,然后将nums1数组前m个元素拷贝到临时数组中。定义三个指针start1,start2,index分别指向temp,nums2,nums1的0索引位置。将nums1数组拷贝到一个临时数组,直接用临时数组和nums2中的元素比较,谁小直接从nums1数组的0索引开始覆盖。
2024-01-11 14:55:14
487
1
原创 PS智能 BI 项目(Java项目)
基于 React + Spring Boot + MQ + AIGC 的智能数据分析平台。区别于传统 BI,用户只需要导入原始数据集、并输入分析诉求,就能自动生成可视化图表及分析结论,实现数据分析的降本增效。
2024-01-10 23:14:50
933
原创 LeetCode面试经典150题--第二题:移除元素(Java)
将数组中与val不同的元素直接从0位置开始覆盖就可以了。定义一个指针指向0索引位置,覆盖一个向右移动一个位置。
2024-01-09 20:39:13
436
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人