Java数据结构与算法
文章平均质量分 97
weixin_42469070
这个作者很懒,什么都没留下…
展开
-
Java数据结构与算法(四)
B 树通过重新组织节点,降低树的高度,并且减少i/o读写次数来提升效率。1)如图 B 树通过重新组织节点, 降低了树的高度.2)文件系统及数据库系统的设计者利用了磁盘预读原理,将一个节点的大小设为等于一个页(页得大小通常为 4k),这样每个节点只需要一次 I/O 就可以完全载入3) 将树的度 M 设置为 1024,在 600 亿个元素中最多只需要 4 次 I/O 操作就可以读取到想要的元素, B 树(B+)广泛应用于文件存储系统以及数据库系统中B-tree 树即B 树,B 即Balanced。原创 2022-09-05 19:47:13 · 390 阅读 · 0 评论 -
Java数据结构与算法(三)
1) 看一个实际需求,google 公司的一个上机题:2)有一个公司,当有新的员工来报道时,要求将该员工的信息加入(id,性别,年龄,住址…),当输入该员工的 id 时,要求查找到该员工的 所有信息.3) 要求: 不使用数据库,尽量节省内存,速度越快越好=>哈希表(散列)散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。原创 2022-08-22 20:21:52 · 481 阅读 · 0 评论 -
Java数据结构与算法(二)
看个实际应用场景,迷宫问题(回溯), 递归(Recursion)简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量:递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。我列举两个小案例,来帮助大家理解递归,部分学员已经学习过递归了,这里在给大家回顾一下递归调用机制1)打印问题2)阶乘问题3) 使用图解方式说明了递归的调用机制4) 代码演示 4 递归能解决什么样的问题 递归用于解决什么样的问题1) 各种数学问题如: 8 皇后问题 , 汉诺塔, 阶乘问题, 迷宫问题, 球和篮子的问题...原创 2022-08-08 21:33:46 · 247 阅读 · 0 评论 -
Java数据结构与算法(一)
字符串匹配问题:1) 有一个字符串 str1= ““硅硅谷 尚硅谷你尚硅 尚硅谷你尚硅谷你尚硅你好””,和一个子串 str2=“尚硅谷你尚硅你”2) 现在要判断 str1 是否含有 str2, 如果存在,就返回第一次出现的位置, 如果没有,则返回-13) 要求用最快的速度来完成匹配4) 你的思路是什么?汉诺塔游戏请完成汉诺塔游戏的代码: 要求:1) 将 A 塔的所有圆盘移动到 C 塔。并且规定,在 2) 小圆盘上不能放大圆盘,3)在三根柱子之间一次只能移动一个圆盘使用到分治算法八皇后问题是一个古老而...原创 2022-08-01 22:16:44 · 443 阅读 · 0 评论