自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java 为什么有时一个类有多个构造函数

java 为什么有时一个类有多个构造函数https://blog.csdn.net/qq_14989227/article/details/79550607关于 Java 的静态工厂方法,看这一篇就够了!https://www.jianshu.com/p/ceb5ec8f1174单例模式?https://bbs.csdn.net/topics/390753067而且这种私有...

2018-08-30 09:52:02 1560

原创 【Data Structure】堆和堆排序 [part 2]

堆和堆排序 [part 2]    为什么使用堆    4-2 堆的基本存储    4-3 Shift Up    4-4 Shift Down    4-5 基础堆排序和Heapify队列的特点是先进先出(FIFO)。优先队列不再遵循先入先出的原则,而是分为两种情况:最大优先队列,无论入队顺序,当前最大的元素优先出队。最小优先队列,无论入队顺序,当前最小的元素优先出队。比如有...

2018-08-18 15:41:00 132

原创 【Data Structure】堆和堆排序 [part 1]

堆和堆排序 [part 1]    4-1 为什么使用堆    4-2 堆的基本存储    4-3 Shift Up    4-4 Shift Down    4-5 基础堆排序和Heapify二叉堆本质上是一种完全二叉树,它分为两个类型:1.最大堆2.最小堆什么是最大堆呢?最大堆任何一个父节点的值,都大于等于它左右孩子节点的值。什么是最小堆呢?最小堆任何一个父节点的...

2018-08-18 15:39:10 125

原创 【Data Structure】高级排序问题 [part 2]

高级排序问题 [part 2]●快速排序法●随机化快速排序法●双路快速排序法●三路快速排序法●归并排序和快速排序的衍生问题 1   快速排序法每次从当前排序的数组中选择一个元素,以该元素为基点,考虑将其移动到排好序情况下应该处在的位置(该元素之前的元素都小于该元素,该元素之后的元素都大于该元素),再对左右两个子数组递归使用快速排序//对arr[l...r]...

2018-08-17 12:16:32 156

原创 【Data Structure】高级排序问题 [part 1]

高级排序问题 [part 1]●归并排序法●归并排序法的递归实现(自顶向下)●归并排序法的优化●归并排序法的非递归实现(自底向上)1   归并排序法1.1  原理:首先将数组分成左右两个部分,考虑将左边和右边的数组分别排序,再归并在一起,递归使用该操作1.2  时间复杂度使用二分法,达到O(logn)的层级,每个层级使用O(n)时间复杂度的算法进行操作,最终...

2018-08-17 12:15:53 120

原创 跳坑汇总

目录IDEA如何回到欢迎页面idea导入项目,不显示项目结构IDEA如何回到欢迎页面在没有设置之前,IDEA会默认打开上次的项目工程。选择菜单File -> Settings -> Appearance & Behavior ->System Settings,取消 Reopen last project on startup (在启动的时候打开上...

2018-08-14 17:14:36 214

原创 【leetcode】343. 整数拆分、【leetcode】70. 爬楼梯

343.整数拆分动态规划:将原问题拆解成若干子问题,同时保存子问题的答案,使得每个子问题只求解一次,最终获得原问题的答案大部分动态规划问题本质上都是递归问题,只是在递归的过程中,会发现所谓的“重叠子问题”和“最优子结构”(通过求子问题的最优解,可以获得原问题的最优解)对于同时拥有重叠子问题和最优子结构的问题,考虑两种解决方式:1、记忆化搜索(自顶向下解决问题,较容易实现) 2、动态规...

2018-08-14 17:13:05 559

原创 并不基础的基础——计算机网络笔记

并不基础的基础——计算机网络笔记复习了一段时间的基础知识,略有所得,所以准备开这么一个坑,记录一些在学习计算机网络过程中的体会。还是老样子,我不准备把这个博客写成百度百科,我只想跳脱出基础概念,把实际的应用场景代入进去,总之就是再深入一点目录TCP协议和UDP协议有什么区别?TCP协议和UDP协议有什么区别?传输控制协议 TCP(Transmission Control Pro...

2018-08-13 21:20:11 222

原创 【C++】多态性和虚函数

多态及其相关概念理解●早捆绑/晚捆绑●虚函数●虚析构函数●纯虚函数●抽象类 多态C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象所属的不同类来调用类中实现的相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数早捆绑(静态多态)程序在编译阶段(运行之前),根据...

2018-08-12 11:21:45 133

原创 【Data Structure】二叉搜索树 [part 2]

二叉搜索树 [part 2]●二叉搜索树的顺序性●二叉搜索树的局限性●一种特殊的平衡二叉树:红黑树●平衡二叉树和堆的结合:Treap●Trie树(字典树) 7  二叉搜索树的顺序性1、容易找到一组数据中的min和max2、容易找到一组数据中的前驱和后继(要找A的前驱和后继,首先A要是二叉搜索树中的一个节点)3、容易找到一组数据中的floor和ceil(要找A...

2018-08-09 15:43:02 110

原创 【Data Structure】二叉搜索树 [part 1]

二叉搜索树 [part 1]●二分查找法●二叉搜索树●插入新节点(递归实现)●查找●前中后序遍历●层序遍历(广度优先遍历)●删除节点1  二分查找法二分查找法只能作用在一个有序的序列中,时间复杂度为O(logn)/*非递归形式实现二分查找在有序数组arr中,查找target如果找到target,返回相应的索引index,如果没有找到target,返...

2018-08-09 15:42:13 162

原创 【leetcode】3. 无重复字符的最长子串

3. 无重复字符的最长子串整体思路: 用一个unorder_map来保存字符串中每个字符所对应的最近一次出现位置,用字符串本身作为map的key设一个k和i,k用来表示最长子串的起始位置,i用来表示顺序遍历的当前位置,max_len用来保存当前最长子串长度遍历字符串如果当前字符没有出现过(map[key] == 0),则置map的value为当前位置i如果当前字符已经出现过...

2018-08-02 08:55:07 91

空空如也

空空如也

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

TA关注的人

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