随笔分类 -  Algorithm

回归计算机基础 回归算法
剑指offer大总结
摘要:字符串 字符串流中第一个只出现一次的字符 判断字符串是否表示为数值 字符串左旋K位操作 正则表达式匹配问题 字符串转整数 扑克牌顺子 翻转一句话中的单词 旋转字符串问题(难) 数组问题 构建乘积数组 数组中重复的数字 和为sum的两个数字 数组中只有唯一一个元素重复 数组中只出现一次的两个数字 有序 阅读全文

posted @ 2020-09-29 08:19 小毅哥哥Bob 阅读(190) 评论(0) 推荐(0)

哈希表及其应用分析
摘要:哈希表 什么是哈希表 首先,哈希表是一种数据结构,它通过某种映射函数$index=f(keyValue)$将keyValue映射为某个可以直接访问的位置(索引),从而能加快在该数据结构中查询keyValue的速度。因此一个哈希表通常由数组+链表的结构组合而成,通过数组的索引能快速访问到keyValu 阅读全文

posted @ 2020-06-04 21:01 小毅哥哥Bob 阅读(430) 评论(0) 推荐(0)

程序员常用的查找算法
摘要:查找算法 要求: 从数组中找出指定的关键值(key),常用的查找算法有4种: (1)线性查找,也称为顺序查找 (2)二分查找 (3)插值查找 (4)斐波那契查找 说明: (2)、(3)、(4)本质上都是通过数组的中间值,将关键字(key)逐渐缩小查找范围,二分查找以数组中间值将查找范围缩小一半;插值 阅读全文

posted @ 2020-06-04 17:47 小毅哥哥Bob 阅读(332) 评论(0) 推荐(0)

程序猿必备排序算法及其时间复杂度分析
摘要:常用的时间复杂度 常数阶$O(1)$ 说明: 只要代码中没有复杂的循环条件,无论代码的函数是多少,一律为常数阶$O(1)$ int i=1; int j=3; int m=0; m=i+j; .... 对数阶 \(O(log_2n)\) 说明: 存在循环体,在不考虑循环体的代码执行情况,该循环体本该 阅读全文

posted @ 2020-06-03 23:00 小毅哥哥Bob 阅读(831) 评论(0) 推荐(0)

递归和回溯求解8皇后问题
摘要:递归和回溯 递归原理 (1)什么是递归? 答:递归就是自己调用自己,每次调用都传入不同的变量 (2)递归调用的机制 答:栈。当程序执行到一个方法的时候,为该方法开辟一个独立的栈空间用于存放该方法所用到的全部变量,如果这些变量是引用变量,那么他们则是共享一个变量空间,其他的变量有独立的空间。 (3)使 阅读全文

posted @ 2020-06-02 11:44 小毅哥哥Bob 阅读(292) 评论(0) 推荐(0)

链表种类及其常用操作
摘要:#常用链表链及其必备操作 单链表的反转算法 思路分析 (1)遍历单链表,获取当前链表的当前结点curNode,并记录当前结点的下一个结点nextNode; (2) 新建一个反转链表reverseHead,将当前结点curNode插入到reverseHead的最前面的结点(curNode.next=r 阅读全文

posted @ 2020-06-01 20:22 小毅哥哥Bob 阅读(507) 评论(0) 推荐(0)

为什么要使用稀疏矩阵??
摘要:为什么要使用稀疏矩阵 (1)稀疏矩阵描述了矩阵的存储结构,能用较少的内存描述矩阵的本质 (2)当矩阵中含0的元素非常多的情况下,才适合用稀疏矩阵 稀疏矩阵的存储结构 1 2 3 0 rowCount colCount valueCount(!=0) 1 rowIndex colIndex value 阅读全文

posted @ 2020-05-30 15:24 小毅哥哥Bob 阅读(1192) 评论(0) 推荐(0)

导航