- 博客(7)
- 收藏
- 关注
原创 十大排序算法(C++)LeetCode题解 912.排序数组
题目: 给你一个整数数组nums,请你将该数组升序排列。 注:有关排序算法的具体讲解解析,初学者可观看LeetCode官方的Leetbook《排序算法全解析》 一、时间复杂度O(n²)的排序算法 由于时间复杂度太高,下述三个排序方法提交LeetCode均会超时。 冒泡排序,空间复杂度O(1) 冒泡排序是最基本的排序算法
2021-08-22 16:31:16
665
原创 LeetCode题解 160.相交链表(C++) 图解两个双指针的简单思路 链表经典题
题目: 提示:由于优快云不支持Leetcode将图片转化为类似ppt形式的界面,笔者推荐去LeetCode看本题解 LeetCode题解链接:160.相交链表 给你两个单链表的头节点headA和headB请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回null。 示例1: 输入:intersectVal = 8, listA = [4,1,8,
2021-08-15 11:22:25
351
原创 Leetcode 题解 图解 206.反转链表(c++)链表必做题 最好理解的两种简单方法
题目: ** 提示:由于优快云不支持Leetcode将图片转化为类似ppt形式的界面,笔者推荐去LeetCode看本题解** LeetCode题解链接:206.反转链表 给你单链表的头节点head,请你反转链表,并返回反转后的链表。 示例1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例2: 输入:head = [1,2] 输
2021-08-13 21:21:00
405
原创 Leetcode题解 剑指offer 18.删除链表的节点(C++)链表最基础操作
题目: 题目链接:剑指offer 18.删除链表的节点 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。 示例1: 输入:head = [4,5,1,9],node=5 输出:[4,1,9] 示例2: 输入:head = [4,5,1,9],node=1 输出:[4,5,9] 解题思路 假设我们要删除链表中的cur
2021-08-07 10:51:32
197
原创 Leetcode题解 237.删除链表中的节点(C++)脑筋急转弯 是谁杀了我,而我又杀了谁?
题目: 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为要被删除的节点。 示例1: 输入:head = [4,5,1,9],node=5 输出:[4,1,9] 示例2: 输入:head = [4,5,1,9],node=1 输出:[4,5,9] 注意:本题传入函数的唯一参数是node,并没有传入参数头结点head 解题思路 这道题还挺有意思的,就是没啥刷题的意义,初学者想正经做
2021-08-07 10:01:02
134
原创 Leetcode题解 83.删除排序链表中的重复元素(C++)
题目: Leetcode题解链接:83.删除排序链表中的重复元素 存在一个按升序排列的链表,给你这个链表的头节点head,请你删除所有重复的元素,使每个元素只出现一次。返回同样按升序排列的结果链表。 示例1: 输入:head = [1,1,2] 输出:[1,2] 示例2: 输入:head = [1,1,2,3,3] 输出:[1,2,3] 解题基础: 对于数据结构
2021-08-06 22:32:33
642
原创 C++简单了解链表
提示:如果想直接了解链表,请直接跳到第二点,第一点只是讲了一点笔者认为数据结构的初学者可能需要简单了解的地方。 目录一、数据结构的简单理解二、链表是什么?三、链表类型1.单链表2.双向链表3.循环链表总结 一、数据结构的简单理解 作为数据结构的初学者,笔者一开始只知道数组,所以让我们从数组出发,初步了解数据结构是什么。 一个C++的数组,可以存储与用户定义的数组类型相同类型数据项的变量。但是,如果我们想要存储
2021-08-06 21:17:15
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人