算法
wanglei727
学习不再三更五鼓,功只怕一曝十寒
展开
-
leetcode三数之和的一点理解
整体的思路就是排序加上双指针时间复杂度为n方没有用到额外的存储空间 所以空间复杂度是O(1)题目的难点就是去掉重复元素吧这样通过双指针来去除重复的元素。很有思想。...原创 2020-02-21 20:42:48 · 241 阅读 · 0 评论 -
leetcode两数之和的一点理解
两数之和第一种方法我们可以使用暴力求解法,但是时间复杂度为N方所以我们是额外的存储空间hashMap来存储每个元素这样时间复杂度为O(n)原创 2020-02-18 20:03:52 · 119 阅读 · 0 评论 -
求二叉树深度的一点理解
递归方式求解深度。层次遍历方式求解深度。原创 2020-02-07 18:31:41 · 152 阅读 · 0 评论 -
二叉树非递归遍历的一点理解
二叉树是我们必须要了解的一个数据结构,针对这个数据结构我们可以衍生出好多知识。原创 2020-02-05 19:34:13 · 444 阅读 · 0 评论 -
堆排序的一点理解
先画一个建堆的图方便大家理解原创 2020-02-03 12:00:59 · 323 阅读 · 0 评论 -
快速排序的一个理解
快速排序的思想就是分治法,取任意一个数为基数,从左或者从右边开始比较,从左边比的话就是比基数小,从右边比的话就是比基础大,这样一分为二,最终就是基数左边的比基数小,右边的比基数大,依次在去分解左边的数据和右边的数据,基于这个思想,写了以下快速排序代码。...原创 2020-02-02 15:55:21 · 175 阅读 · 0 评论 -
选择排序的一点理解
选择排序的思想就是从N个元素中选出最小的一个放在第一个位置,在剩下的N-1个元素选出第二个最小的放在第二个位置,在剩下的N-2 个元素选出第三个最小的元素放在第三个位置,依次类推。根据这个思想 写了一下如下的选择排序。...原创 2020-02-02 12:23:38 · 216 阅读 · 0 评论 -
冒泡排序的一点理解
冒泡排序的思想实际上就是两两比较,每次挑选出最大的的值或者最小的值放到最后,就想冒泡一样的往上走,所以是冒泡排序。根据这个思想,自己写了一下。...原创 2020-02-02 11:18:36 · 159 阅读 · 0 评论 -
插入排序的一点理解
插入排序跟我们平常打扑克是差不多,我们每次抓一张牌的时候总会按照一定顺序插入到适当的位置,插入排序也是这个道理,我们会将每个元素插入到已经排好序的列表里,根据这个思想,自己写了一个插入排序。...原创 2020-02-02 10:57:44 · 121 阅读 · 0 评论 -
归并排序的一点理解
说归并排序之前我们需要理解一个概念就是递归,什么是递归,其实递归在我们生活也比较常见,我用我自身遇到过的事情来给大家举个栗子,比如我平时遇到不懂的概念总回去查百度百科,当我在看答案的时候发现又有一些名词是我不认识,我就又先去看一个这个名词是什么意思,当我看这个名词的时候,我发现这个名词对应的解释也有一些专用名词也不是太懂,然后我又去查这些不懂的专用名词,当我把这个专有名词看懂后,我在逐层的往回看,...原创 2020-01-31 18:01:27 · 197 阅读 · 0 评论