
数据结构与算法
风语听画
思考+痛苦==成长!
展开
-
002 | 线性表
写在前面:好读书,要求甚解!线性表:零或多个数据元素的有限序列,每个元素最多只有一个直接前驱元素和一个直接后继元素;线性表的顺序存储结构,指的是用一段连续的存储单元依次存储线性表的数据元素,通常用一维数组实现; 优点:a. 由于逻辑关系和物流关系的一致性,所以无须为表示表中元素之间的逻辑关系而增加额外的存储空间; b. 可以快速的读取任一位置的元素; ...原创 2019-02-27 22:31:04 · 224 阅读 · 0 评论 -
二叉树下
写在前面:上午看了星爷的新喜剧之王,由于之前感觉评分不高导致并没有上映就看的!看完觉得真的没有感到有多差,起码我是这样认为的!输入一棵二叉树,判断该二叉树是否是平衡二叉树package tree;import java.util.HashMap;/** * Create by IDEA * User: zhangqi * Date: 2019/3/28 * Desc: 输入...原创 2019-03-31 12:30:51 · 213 阅读 · 0 评论 -
mysql索引与b+树
写在前面:看到两篇文章很喜欢,又怕后面失联,所以决定将链接记录下来!mysql索引为什么使用b+树?https://blog.youkuaiyun.com/xlgen157387/article/details/79450295什么是红黑树?https://www.cnblogs.com/skywang12345/p/3245399.html...原创 2019-04-04 15:32:58 · 246 阅读 · 0 评论 -
二叉树上
写在前面:数据结构存在的意义是什么? 读书百遍其义自见!二叉树结点类package tree;/** * User: ZhangQi * Date: 2019/3/18 * Time: 10:22 * Desc: 二叉树结点类 */public class TreeNode { public int val; public TreeNode left;...原创 2019-03-30 11:14:17 · 143 阅读 · 0 评论 -
004 | 线性表面试经典上
写在前面:纸上得来终觉浅,绝知此事要躬行!有人说学数据结构光看不练就是耍牛氓,通过这几天的练习,感觉看跟写真的是两码事,前者是面儿后者才是里。若某表最常用的操作是在最后一个结点之后插入一个节点或删除最后一二个结点,则采用()省运算时间。A. 单链表B. 双链表C. 单循环链表D. 带头结点的双循环链表答案:D解析:单链表和双链表每次找到尾部都需要遍历整个链表,单循环链表是单向的,...原创 2019-03-08 10:32:40 · 249 阅读 · 1 评论 -
006 | 线性表面试经典下
写在前面:最近公司有奔向996的趋势了,传统行业都要如此了!给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null思路:假设x为环前面的路程(黑色路程),a为环入口到相遇点的路程(蓝色路程,假设顺时针走), c为环的长度(蓝色+橙色路程) 当快慢指针相遇的时候: 此时慢指针走的路程为Sslow =x + m * c + a快指针走的路程为Sfast = x + n * ...原创 2019-03-11 22:39:06 · 196 阅读 · 0 评论 -
008 | 数据结构—队列
写在前面:按引擎的检索原理来看,这样的标题被看到的概率就很低了!队列:只允许在一端进去插入操作,在另一端进行删除操作的线性表,允许插入的一端成为列尾,允许删除的一端成为列头java实现循环队列package queue;/** * User: ZhangQi * Date: 2019/3/14 * Time: 15:01 * Desc: 循序队列抽象数据类型 */publ...原创 2019-03-14 19:48:58 · 186 阅读 · 0 评论 -
005 | 线性表面试经典中
写在前面:温故而知新,几天不练就要遗忘!输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则:package link;/** * Create by IDEA * User: zhangqi * Date: 2019/3/9 * Desc: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则 */...原创 2019-03-09 23:32:43 · 138 阅读 · 0 评论 -
007 | 数据结构—栈
写在前面:当潮水退去,但愿我有底裤!栈:仅在表尾进行插入和删除的线性表.java实现循序栈package stack;/** * User: ZhangQi * Date: 2019/3/13 * Time: 11:21 * Desc: 栈抽象数据类型 */public interface StackTest { /** * 初始化栈 * @...原创 2019-03-14 11:54:39 · 168 阅读 · 0 评论 -
001 | 数据结构与算法绪论
写在前面:好的公司面试真的真的很注重基础基础基础啊啊啊!一. 数据结构绪论程序设计 == 数据结构 + 算法;数据:是描述客观事物的符号,能够被计算机识别并处理;数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也称为记录(有点类似于对象);数据结构:相互之间存在一种或多种特定关系的数据元素的集合;按照视点不同,可以分为逻辑结构和物理结构;逻...原创 2019-02-25 11:53:06 · 236 阅读 · 1 评论 -
003 | java实现单链表
写在前面:熟能生巧,古人诚不欺我!结点类package list;/** * Create by IDEA * User: zhangqi * Date: 2019/2/26 * Desc: 单链表结点 */public class LinkNode { //指针域 LinkNode next; //数据域 Object data; ...原创 2019-02-27 22:40:09 · 156 阅读 · 0 评论 -
排序
写在前面:冒泡排序和快速排序,选择交换排序和堆排序交换类package sort;/** * Create by IDEA * User: zhangqi * Date: 2019/4/7 * Desc: 排序公共方法类 */public class MySort { public static void swap(int[] arr, int i, int j)...原创 2019-04-09 20:32:30 · 220 阅读 · 0 评论