数据结构与算法
wildec777
这个人很真的很懒
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
双指针法LeetCode总结
双指针方法遍历对象的过程中,使用两个指针进行操作,实现相应的目的快慢指针经典环形链表待补充对撞指针适用于有序数组,设置数组左索引与数组右索引代码基本流程是public f(int[] nums){ int left = 0; int right = nums.length-1; while (left <= right){ left++; //进行操作 rigth--; }}盛水最多的容器class原创 2020-08-20 01:27:41 · 251 阅读 · 0 评论 -
红黑树基本原理
红黑树是一颗二叉查找树红黑树的节点不是红色就是黑色叶子节点的是黑色(NIL)根节点都是黑色的root红色节点的两个子节点一定是黑色的,不可能存在两个相连的红色节点黑高:任意一个节点的叶子的节点路径上的黑节点数量是相同的如果一个节点存在一个黑子节点,那么该节点必然有两个子节点1,三种基本操作变色左旋右旋2,查找:与二叉搜索树一样3,插入:新建节点必须是红色的当红黑树是空树的时候插入+染色当插入的节点已经存在的情况查找到相应的节点以后把值更新原创 2020-08-17 19:52:13 · 241 阅读 · 0 评论 -
Java基础数据结构及其实现原理(一)
Java基础数据结构Java类库中的基础数据结构关注的问题:实现的方式 基础的数据结构是否有序 是否为空 是否重复1, ListArrayList的实现原理实现原理:数组,可扩容基本的特点:查询快增删慢//无参构造 默认容量是空public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; }private static final Object[] DEFAU原创 2020-08-01 22:50:31 · 435 阅读 · 0 评论 -
二叉树的遍历算法(一)
///*// 复习一下 树的遍历算法// 递归方法:前中后// 非递归方法:前中后+层次//// 树的定义://public class TreeNode {// int val;// TreeNode left;// TreeNode right;// TreeNode(int x){// val =x;// }//}////*///public class Q1 {//递归函数写的时候就跟手算是一样的原创 2020-07-15 15:33:47 · 356 阅读 · 0 评论 -
三大基本排序算法
三大基本排序算法快排与快排切分public class quickSort { //快速排序的核心思想 分治+递归 //采用操作里面 比较核心的就是 使用一个临时变量pivot存储中间量,然后空出来每次强制替换的话 就可以少很多事情、 //时间复杂度O(NlogN)-O(N^2) //空间复杂度O(1) public static void quickSort(int[] array, int L, int R){ if (L >= R)原创 2020-07-15 15:29:46 · 305 阅读 · 0 评论
分享