logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

leetcode2161 根据给定数字划分数组

本题与荷兰国旗问题有一定的区别,如果用三指针来解决,相对顺序是有可能被打乱的,所以本题可以使用直白的三次遍历,即。,分别将<pivot的数,=pivot的数,>pivot的数加入ret向量。

文章图片
#算法#leetcode#数据结构 +2
leetcode 1018 可被5整除的二进制前缀

由于题目描述比较清晰,所以我们可以采用模拟的方法来解决这个问题。

文章图片
#leetcode#算法#职场和发展 +2
leetcode 1863 找出所有子集的异或总和再求和

画出模拟解决这个问题,可以采用的方法来解决这个问题。

文章图片
#leetcode#算法#职场和发展 +2
leetcode3612 用特殊操作处理字符串I

遍历字符串,按照题目要求进行处理就可。

文章图片
#数据结构#leetcode#算法 +2
leetcode287寻找重复数

(1)首先,初始化slow指针为nums[0],fast指针为nums[nums[0]],slow指针每次走一步,fast指针每次走两步,直至slow==fast;(2)再定义一个新指针ptr,初始化为nums[0],ptr和fast每次走一步,直至二者相遇,返回此时的ptr,即为所求。由于本题的数字的范围为[0,n],数组的下标为[0,n],经过分析可以得知本题实质上是在找环的入口,可以使用。首

文章图片
#算法#数据结构#c++ +1
leetcode239 滑动窗口最大值

来记录窗口中元素出现的次数,map的键是窗口中的数,值为该数字在窗口中出现的次数。由于map的底层实现是红黑树,所以。,将其加入ret向量即可。

文章图片
#哈希算法#算法#leetcode +2
leetcode 64 最小路径和

由题意可知,本次的选择基于前面的结果,所以可以使用动态规划来解决这个问题。

文章图片
#leetcode#算法#职场和发展 +2
leetcode 3289 数字小镇中的捣蛋鬼

由于本题是要找出出现了两次的两个数字,所以我们可以借用来解决这个问题。在遍历数组nums的过程中统计数字出现的次数,hash[i]的值即为i出现的次数,当然,由于2<=n<=100,所以我们可以使用数组来模拟哈希表,当hash[i]==1时,将nums[i]加入ret向量,遍历完后返回ret即可。

文章图片
#leetcode#算法#职场和发展 +2
leetcode 143 重排链表

1>指针firstnext用于记录first的下一个位置的地址,指针secondnext用于记录second的下一个位置的地址;(2)定义指针first和second分别指向两个新链表的头节点,将两个链表断开,即slow->next=nullptr;(3)最后,将前半部分节点构成的链表和第二部分翻转后的链表进行合并(<3>指针next用于保存正在处理的结点的下一个位置,避免指针丢失;<2>将sec

文章图片
#leetcode#链表#算法 +2
leetcode 912 排序数组(归并排序)

mid=(right+left)>>1,为了防止溢出,我们写成mid=left+(right-left)/2;(1)当left=>right即,区间里面只有1个元素或者没有元素时,表示无需排序,直接return;由于本题需要使得数组进行升序排列,所以我们可以使用。[left,mid]和[mid+1,right],即将tmp中的元素移动到nums中。时间复杂度:T(n)=O(nlogn),将合并后的

文章图片
#leetcode#算法#数据结构 +2
    共 15 条
  • 1
  • 2
  • 请选择