数据结构
学前班的yc
一个励志达到小学二年级水平的学前班yc
展开
-
算法时间复杂度(笔记)
算法时间复杂度 算法概述 定义:解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。 特性: 输入输出 有穷性 确定性 可行性 设计时的要求: 正确性 可读性 健壮性 时间效率高和存储量低 算法效率的度量方法-大O记时法 评估算法性能,主要评估问题的输入规模n与元素的访问次数f(n)的关系 f(n)=n f(n)=n² 大O的记时法:就是通过估算得到代码运行后的时间,即估计此代码的时间复杂度。这样可以判断出我们写出的代码是否高效~。 大O符号,原创 2020-07-07 16:01:30 · 230 阅读 · 0 评论 -
希尔排序步骤分析(笔记)
希尔排序步骤分析 指路b站《算法很美》 个人觉得老师讲的十分nice 希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。 首先定义出增量(interval),为数组arr.length/2,来分组。 以int[]arr={9,8,7,6,5,4,3,2,1};为例 interval=arr.length/2=4 组别 元素 第一组 9、5、1 第二组 8、4 第三组 7、3 第四组 6、2 然后在组内进行插入排序 public原创 2020-07-02 21:12:43 · 310 阅读 · 0 评论 -
汉诺塔的递归步骤分析(笔记)
汉诺塔的递归步骤分析(笔记) 本文分为两个部分 代码实现 步骤分析 递归方法设置了4个参数: N:初始N个从小到大的盘子,N是最大编号 from:初始的柱子 to:目标柱子 help:辅助的柱子 代码实现: public class day06 { public static void main(String[] args) { hannuota(3, "A", "B", "C"); } /** * * @param N 初始N个从小到大的盘子,N是最大编号 * @param原创 2020-06-29 17:53:13 · 335 阅读 · 0 评论 -
1的个数算法分析(笔记)
1的个数 代码需求:把输入数字转化成二进制,实现输出其中一的个数 代码如下: public class day04 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); System.out.println(Integer.toString(n,2)); int count=0;原创 2020-06-29 13:53:25 · 167 阅读 · 0 评论 -
JAVA 《算法很美》二、递归(笔记)
递归 递归设计经验 找重复 找重复的变化量 参数 找参数变化趋势 设计出口 练习策略 循环改递归 经典递归 大量练习,总结规律,掌握套路 找到感觉,挑战高难度 例题 数组求和 递归调用(设计起点) 调用递归函数 public class day02 { public static void main(String[] args) { System.out.println(sum(new int[] {1,2,3,4,5}, 0)); } /** * 递归函数 *原创 2020-06-24 15:58:24 · 201 阅读 · 1 评论 -
JAVA《算法很美》一、位运算与进制基础(笔记)
《算法很美》一、位运算与进制基础(笔记) 1.相关基础 位运算 在处理整形数值时,可以直接对组成整形数值的各个位进行操作。 &(与),|(或),^(异或),~(非/取反) (>>和<<)运算符将二进制位进行右移或左移操作 (>>>)运算符将用0填充高位;(>>)运算符用符号位填充高位,没有(<<<)运算符 对于int型,1<<35与1<<3是相同的,而左边的操作数是long型时需要对右侧操作数模64原创 2020-06-23 18:28:34 · 190 阅读 · 0 评论 -
环形列表步骤分析(自学笔记)
环形列表步骤分析 自学数据结构与算法:B站视频链接 代码细节: 存入数据rear的公式为rear=(rear+1)%maxSize; 取出数据front的公式为front=(front+1)%maxSize; 判断数组状态满(is Full)的条件为(rear+maxSize-front)%maxSize==0 判断数组状态空(is Empty)的条件为rear==front 没有存入数据时 rear=front=0 maxSize=3 这里初始化front和rear为0 front指向队列的原创 2020-06-17 11:49:27 · 542 阅读 · 0 评论