String、StringBuffer、StringBuilder的区别 String是不可变类,任何对String的改变都会引发新的String对象的生成; StringB...
String、StringBuffer、StringBuilder的区别 String是不可变类,任何对String的改变都会引发新的String对象的生成; StringB...
Huffman树的建立 基本介绍 给定n个权值作为n 个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huff...
根据JDK文档,这个接口的compareTo方法返回一个整数 例如:a.compareTo(b);如果返回0,a==b返回正整数,a>b返回负整数,a<b 例如: 然后可以创...
public String substring(int beginIndex)返回一个字符串,该字符串是此字符串的子字符串。 子字符串以指定索引处的字符开头,并扩展到该字符串...
稀疏数组可以看做是普通数组的压缩,但是这里说的普通数组是值无效数据量远大于有效数据量的数组 形如: 其稀疏数组形式: 2.存储 刚说到稀疏数组是一种压缩后的数组,为什么要进行...
Node节点类添加了: 遍历中序线索化二叉树 优势 (1)利用线索二叉树进行中序遍历时,不必采用堆栈处理,速度较一般二叉树的遍历速度快,且节约存储空间 (2)任意一个结点都能...
顺序储存二叉树 顺序储存二叉树的遍历
二叉树的前序、中序、后序遍历 前序、后序、中序查找的算法与上类似 删除节点 要求 如果删除的节点是叶子节点,则删除该节点 如果删除的节点是非叶子节点,则删除该子树.
顺序(线性)查找 二分查找(有序数组) 插值查找 斐波那契查找(黄金分割法)*
约瑟夫问题:N个人围成一圈,从第M个人开始报数,第K个将被杀掉,问最后剩下的人是第几个 用链表解决此问题,addBoy(int nums)方法创建人数为nums的环形链表 s...
冒泡排序 时间复杂度O(n^2) 选择排序 时间复杂度O(n^2) 冒泡排序与选择排序的区别 冒泡排序是将“最大值”不断移向最后,比如第一次遍历,将全部数的最大值移到最后一个...
八皇后问题,是由国际西洋棋棋手马克斯·贝瑟尔于1848年提出的问题,是回溯算法的典型案例。 问题表述为:在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都...
22. 括号生成[https://leetcode-cn.com/problems/generate-parentheses/] 难度中等 数字 n 代表生成括号的对数,请你...
21. 合并两个有序链表[https://leetcode-cn.com/problems/merge-two-sorted-lists/] 难度简单 将两个升序链表合并为一...
20. 有效的括号[https://leetcode-cn.com/problems/valid-parentheses/] 难度简单 给定一个只包括 '(',')','{'...
19. 删除链表的倒数第N个节点[https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/] 难度...
17. 电话号码的字母组合[https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/] ...
15. 三数之和[https://leetcode-cn.com/problems/3sum/] 难度中等 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存...