数据结构与算法
六道对穿肠
android开发程序员,写过小程序,前端. 喜欢用技术解决实际问题.
展开
-
读书笔记 算法 algorithms 第一章 2-sum 问题 3-sum 问题
文章目录3-sum2-sum归并排序和二分查找解法PS 哈希表 3-sum 先说下 什么是3-sum问题 : 举例: 在N个数中找出三个和为0 的整数. 最简单的就是三重for循环 暴力求解. 这样时间复杂度就是 $aN^3$ 立方级别 ,其中常数a取决于计算机的型号(性能). 2-sum 在解决3-sum问题之前 先看看2-sum问题 ,从简单的开始. 2-sum 是什么问题 举例: 在N个数...原创 2019-05-02 17:25:38 · 358 阅读 · 0 评论 -
读书笔记 算法 algorithms 第一章 时间复杂度 马士兵解析
书上写的太复杂了,不深读文章不容易理解. 看马士兵的视频容易理解些. 如何测算算法的优劣: 时间测算 计算算法的时间差 幅度不够循环来凑(时间少看不出算法的差别 就使用循环加大幅度) 时间复杂度 空间测算 看使用空间的大小 空间复杂度. Big O 标记法 学术上算法区分算法的优劣 时间随着问题规模的扩大 时间怎么进行变化的 空间同理 不考虑必须要的操作. 循环, 赋初值, 程序初始化,...原创 2019-05-08 21:41:19 · 397 阅读 · 0 评论 -
归并排序-java对象排序的默认算法
java对象排序的默认算法 使用的是改进的归并排序TIM SORT 归并排序先了解递归: 自己调用自己. 内部使用栈 马士兵解析: 思想 将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 治的阶段 举例1: 设计思想 : 如果两个数组已经有顺序了 我们怎么对她进行排序. 再举例: 现在有个数组 下面的数组是...原创 2019-06-28 15:54:06 · 351 阅读 · 0 评论