自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 快速排序(golang)

发明者为东尼霍尔,大部分情况下排序效率很不错。算法原理也比较容易理解:第一步:从当前数列中随机选定一个值作为基准(pivot),然后将数列中小于该基准的值放在基准的左边,将大于该基准的值放在基准的右边,与基准的值相等的可随意放左边或者右边都可。当前基准将数列分成两部分,这个操作过程称为分区(partition)操作。第二步:递归地将所有分区进行第一步所进行的操作,直到无法进行分区操作为止。为了简化随机选取基准的操作,就固定的从分区的最左测选取即可。大致的代码就是这样的f

2021-10-09 15:08:16 189

原创 206. 反转链表

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-linked-list给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。示例 1:输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:输入:head = [1,2]输出:[2,1]示例 3:输入:head = []输出:[]提示:链表中节点的数目范围是 [0, 5000]-5000 &l...

2021-07-19 22:56:12 92 1

原创 24. 两两交换链表中的节点

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/swap-nodes-in-pairs给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]提示:链表中节点的数目在范围 [0.

2021-07-18 17:27:30 82

原创 160. 相交链表

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists给你两个单链表的头节点headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。图示两个链表在节点 c1 开始相交:题目数据 保证 整个链式结构中不存在环。注意,函数返回结果后,链表必须 保持其原始结构 。示例 1:输入:intersectV...

2021-07-18 16:43:50 74

原创 2. 两数相加

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 ...

2021-07-12 14:46:22 44

原创 83. 删除排序链表中的重复元素

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。返回同样按升序排列的结果链表。示例 1:输入:head = [1,1,2]输出:[1,2]示例 2:输入:head = [1,1,2,3,3]输出:[1,2,3]提示:链表中节点数.

2021-07-11 17:39:12 43

原创 19. 删除链表的倒数第 N 个结点

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1..

2021-07-11 16:39:18 38

原创 剑指 Offer 22. 链表中倒数第k个节点

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。示例:给定一个链表: 1->2->3-&gt

2021-07-11 16:00:32 39

原创 876.链表的中间节点

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/middle-of-the-linked-list给定一个头结点为 head的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样.

2021-07-11 15:54:04 38

原创 343. 整数拆分

出自:https://leetcode-cn.com/problems/integer-break给定一个正整数n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 ×3 ×4 = 36。说明: 你可以假设n不小于 2 且不大于 58。----解题思路:按照题目的要求,正...

2021-07-05 19:52:43 101

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除