c++
halo_小怪兽
视觉算法工程师
展开
-
剑指 Offer 25. 合并两个排序的链表
1.题目输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。题目示例1:输入:1->2->4, 1->3->4输出:1->1->2->3->4->42.代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x)原创 2022-02-15 22:29:01 · 425 阅读 · 0 评论 -
剑指 Offer 24. 反转链表
1.题目定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。题目示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL2.思路直接遍历链表的方法,采用原地反转的思路,直接将当前节点的next指向上一个节点,但是需要注意的是如果直接将当前节点的next的指向指向前一个节点,那么我们就丢失的后续的节点了,所以这里需要先用一个指针将当前节点的下一个节点保存下来。#inclu原创 2022-02-15 21:16:52 · 287 阅读 · 0 评论 -
力扣5. 最长回文子串
1.题目给你一个字符串 s,找到 s 中最长的回文子串。题目链接示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2:输入:s = "cbbd"输出:"bb"2.暴力求解+优化思路:求字符串中的最长回文子串,那么可以拆分成:遍历判断该字符串的所有子串是否是回文串,然后再找出最长的回文子串。这样的做法是暴力求解,基本是会超时的。那么进行一定的优化,在遍历子串时,如果该子串的长度小于目前已知的最长回文子串的长度,那么这个子串就无需判断了,原创 2022-02-14 17:15:09 · 713 阅读 · 0 评论 -
力扣54. 螺旋矩阵
1.题目给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。题目2.思路这是一道模拟题,按照螺旋的方式遍历二维数组即可。首先需要获取二维矩阵的行列值m、n。然后用一个同样大小的二维矩阵标记螺旋访问时走过的位置,循环遍历按照:1.右移;2下移;3.左移;4上移。.移动时需要判断是否到达边界和该位置是否已经访问过。循环的结束条件可以时移动的次数<m*n。这里的重点是边界判断。代码class Solution {public: vect原创 2022-02-13 21:13:12 · 323 阅读 · 0 评论 -
剑指 Offer II 007. 数组中和为 0 的三个数
1.题目给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a ,b ,c ,使得 a + b + c = 0 ?请找出所有和为 0 且 不重复 的三元组。链接: 题目.2示例示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]3思路简单点的做法是用3重循环,暴力求解,显然这里时间上肯定是通过不了。那么就得采用原创 2022-02-13 14:58:57 · 417 阅读 · 0 评论 -
快速排序及其C++代码实现
快速排序1 算法介绍:快速排序属于“交换类排序”,通过多次划分操作实现排序。接下来以升序为例介绍算法步骤。在一趟选择当前序列中的一个关键字(通常是第一个)作为中间轴,将当前序列中比中间轴小的元素移到中间抽左边,比中间轴大的元素移动到中间轴右边;当本趟结束后,当前序列中以中间轴为基准,被划分为两个子序列,左边子序列的元素都不大于中间轴,二右边的子序列的元素则都不小于中间轴。接下来再将这两个子序列分别重复以上步骤。2算法执行流程首先进行第一趟排序;1.在开始是first,last分别指向序列的头元素和原创 2022-01-19 14:30:27 · 3983 阅读 · 0 评论 -
C++中的set容器自定义排序规则
set 容器的自定义排序默认数据类型1.利用仿函数自定义set容器排序规则重载()运算符class Mycompare{public: bool operator()(int v1,int v2) { return v1>v2; }} ;2.定义对应的set容器进行数据插操作void test01(){ set<int,Mycompare> s2; s2.insert(30); s2.insert(10); s2.insert(20); s原创 2022-01-14 21:18:13 · 1126 阅读 · 0 评论