
基础算法
文章平均质量分 87
一些常见的基础算法
做最好
学习的痛苦是暂时的,未学到的痛苦是终生的
展开
-
算法学习之路(九)—— 排序算法
分治思想1.分解2.解决子问题3.合并1. 快速排序双向扫描分区法原创 2020-05-10 01:18:20 · 233 阅读 · 0 评论 -
算法学习之路(八)—— 算法时间复杂度分析
T(n) = 2T(n-1) + O(1) ,那么时间复杂度就是O(2^n)T(n) = T(n-1)+T(n-2)+O(1) ,那么时间复杂度就是O(2^n)若规模n没1次减为原来规模的一半,那么时间复杂度为O(lgn),没2次减半,则为O(2lgn) …以此类推T(n) = T(n-1) + O(1) ,那么时间复杂度就是O(n)...原创 2020-05-02 13:48:51 · 1017 阅读 · 0 评论 -
算法学习之路(七)——算法基础
数组求和(练习递归)方法一:import java.util.*;class Main { static int f(int[] a, int begin, int end) { if (begin >= end) return 0; int x = f(a, begin + 1, end); return x + a[begi...原创 2020-05-02 13:43:56 · 1455 阅读 · 0 评论 -
算法学习之路(六)——位操作
位操作(Bit Manipulation)是程序设计中对位模式或二进制数的一元和二元操作。在许多古老的微处理器上,位运算比加减运算略快,通常位运算比乘除法运算要快很多。在现代架构中,情况并非如此:位运算的运算速度通常与加法运算相同(仍然快于乘法运算)。位操作包括:¬¬ 取反(NOT)~∩∩ 按位或(OR) |⊕⊕ 按位异或(XOR) ^∪∪ 按位与(AND) &...原创 2020-05-01 13:01:04 · 277 阅读 · 0 评论