
数据结构与算法
john_lw
这个作者很懒,什么都没留下…
展开
-
数据结构与算法基础概念总结
线性结构—–线性表 定义 具有相同数据类型数据元素的有限序列 顺序表 逻辑上相邻的元素物理位置上也相邻,即数组 链式表 逻辑上相邻的元素物理位置上不一定相邻,节点包含数据域和指针域,指针域指向后继节点。有单向链表,双向链表,循环链表。 顺序与链式比较 名称 存取方式 逻辑/物理结构 增删 查 空间分配 场景选择 顺序表 ...原创 2017-05-11 21:08:28 · 457 阅读 · 0 评论 -
后缀表达式的计算器Java实现
本文用Java实现了基于后缀表达式的简易计算器原创 2017-05-09 13:42:58 · 3398 阅读 · 0 评论 -
二叉查找树Java实现
二叉查找树 首先是一棵二叉树,使其称为查找树的关键性质是其某节点的左子树中任意值都小于该节点,右子树中任意值都大于该节点。 代码如下: public class BinaryTree<T extends Comparable<T>> { private TreeNode<T> root = null; private LinkedLi...原创 2018-03-22 13:23:59 · 349 阅读 · 0 评论 -
排序算法汇总
冒泡排序 算法思想:比较+交换。从数组第一个元素开始,两两比较相邻元素,将较大者后移,直到最后一个元素。重复此操作,直到数组中所有元素有序。 public class BubbleSort { public static void sort(int[] arr) { //重复N-1次 for (int i = 0; i &lt; arr.length - 1...原创 2018-03-19 15:27:47 · 247 阅读 · 0 评论 -
AVL树图解和Java实现
AVL树 AVL树是带有平衡条件的二叉查找树。平衡条件为:某节点左右子树的高度差不超过1。 平衡操作-旋转 在AVL树的插入和删除操作中,需要更新树节点的高度信息以检查AVL树的平衡状态,如果插入和删除后出现了不平衡,还需要通过旋转操作来修正AVL树的平衡状态。 插入后平衡 假设插入后非平衡节点为N,4种情况和修正方案: 向N的左儿子的左子树插入:右旋 向N的右儿子的右子树插...原创 2018-03-27 13:33:44 · 4914 阅读 · 0 评论