![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
算法与数据结构
小伙子。
这个作者很懒,什么都没留下…
展开
-
回文字符串:判断一个是否是回文字符串。回文字符串是指正序(从左向右)和倒序(从右向左)读都是一样的字符串。
题目描述:判断一个是否是回文字符串。回文字符串是指正序(从左向右)和倒序(从右向左)读都是一样的字符串。示例1: 输入: 121输出: true 示例2: 输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例3: 输入: aba输出: true 示例4:...原创 2020-04-09 17:36:12 · 5419 阅读 · 0 评论 -
排序算法:冒泡排序(二)
分析:依次比较两个相邻的元素,将值大的元素交换到右边 N个数字要排序完成,总共进行N-1趟排序,每i趟的排序次数为(N-i)次,所以可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数冒泡排序的优点:每进行一趟排序,就会少比较一次,因为每进行一趟排序都会找出一个较大值。如上例:第一趟比较之后,排在最后的一个数一定是最大的一个数,第二趟排序的时候,只需要比较除了最后一...原创 2020-03-25 13:27:48 · 279 阅读 · 0 评论 -
排序算法:快速排序(一)
1.快速排序的思想先从数列中取出一个数作为基准数(简单起见就选第一个数) 分区过程:将比这个数大的数全放到他的右边,比他小的数全放到他的左边(分治) 再对左右两边的区重复第一步和第二部操作,直到各区间只有一个数(递归) 简单来说就是: 快速排序 = 冒泡 + 分治 + 递归索引 0 1 2 3 数值 11 18 10 ...原创 2020-03-08 14:22:52 · 224 阅读 · 0 评论 -
ListNode两数相加:两个数相加起来,返回一个新的链表来表示它们的和
题目描述:给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例: 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出...原创 2020-03-06 14:28:46 · 908 阅读 · 0 评论 -
两数之和:在该数组中找出和为目标值的那两个整数,并返回他们的数组下标
题目描述:给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0,...原创 2020-03-06 11:40:14 · 1009 阅读 · 0 评论