算法
主要以题目讲解的形式帮助理解算法,由浅入深,持续更新
RUI_NOBUG
一个渴望变强dei小菜鸡
展开
-
算法题目 | 4道基于分治模式、快排思想的算法题(1.奇数在左,偶数在右 2.查找第k小的数 3.寻找发帖"水王" 4.最小可用ID)
文章目录自定义数组工具类MyArrays题目1:调整数组顺序使奇数位于偶数前面自定义数组工具类MyArrays/** * 自定义数组工具类 * * @author LRRacac * */public class MyArrays { /** * 自动生成一个长度为length,元素值介于[min,max]之间的数组 * * @param length---待生成...原创 2020-03-09 13:07:49 · 458 阅读 · 0 评论 -
算法学习 | 归并排序(分治模式的完美体现)+算法题目:求数组逆序对的个数(Java描述)
文章目录归并排序概述实现代码测试代码及结果展示归并排序概述归并排序(Merge Sort)算法完全依照了分治模式① 分解:将n个元素分成各含n/2个元素的子序列② 解决:对两个子序列递归地排序③ 合并:合并两个已排序的子序列以得到排序结果与快排不同的区别① 归并的分解较为随意,重点是合并② 快排的重点是分解(分区),无需合并关于分治模式与快速排序可点此参考学习实现代码/...原创 2020-02-29 19:24:02 · 395 阅读 · 0 评论 -
算法学习 | 快速排序(单向扫描分区法、双向扫描分区法、三指针分区法)+三种优化方法(java描述)
文章目录分治思想快速排序--3种实现方式自定义数组工具MyArrays类单向扫描分区法双向扫描分区法三指针分区法测试代码快速排序--3种优化方式三点中值法绝对中值法待排序列较短时,直接用插入排序分治思想快速排序–3种实现方式自定义数组工具MyArrays类单向扫描分区法/** * 快速排序-单向扫描分区法 * * @author LRRacac * */public cl...原创 2020-02-17 00:27:13 · 2190 阅读 · 0 评论 -
算法学习|题目:破解汉诺塔游戏---将N个盘子以最小步骤移动到目的地,打印每一步的移动路径(基于Java)
@题目:打印汉诺塔游戏移动步骤(N个盘子)原创 2019-11-22 01:40:52 · 1142 阅读 · 0 评论 -
算法学习|题目:求两个整数的最大公约数_欧几里得算法(基于Java)
求两个整数的最大公约数知识补充例如:40与15的最大公约数为5知识补充:1)若数a能被数b整除(也称数b能整除数a),a就叫做b的倍数,b就叫做a的约数。2)M与N的最大公约数:能够同时整除M、N的数中最大的一个数称为M与N的最大公约数。3)整除的性质:若两个数都能被a整除,则它们的差(大数-小数)也能被a整除。即:设数M、N(若M > N)能被a整除,则(M - N)也能被...原创 2019-11-19 17:57:21 · 879 阅读 · 0 评论 -
算法学习|入门级递归算法题目(基于Java)
入门级递归算法题目详解原创 2019-11-17 16:11:39 · 594 阅读 · 0 评论 -
算法学习|题目:找出唯一成对的数(基于Java)
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...原创 2019-11-11 01:10:27 · 291 阅读 · 0 评论 -
算法学习|题目:将整数的二进制形式的奇偶位互换(基于Java)
@题目:将整数的二进制形式的奇偶位互换题目描述:例如:1001 --> 0110分析:(int类型为32位,为描述方便,在此用8位表示)①保留1001的偶数位,屏蔽奇数位:00001001 & 10101010 = 00001000②保留1001的奇数位,屏蔽偶数位:00001001 & 01010101 = 00000001③将获取的偶数位向右移...原创 2019-11-12 22:24:07 · 351 阅读 · 0 评论 -
算法学习|题目:求二进制中1的个数(基于Java)
题目:求二进制中1的个数请实现一个函数,输入一个int型整数,输出该数二进制表示中1的个数。例:9的二进制表示为1001,1的个数为2。分析:巧用位运算方法1:从低位到高位逐位判断已知int类型整数的范围有32位,可通过从低位到高位逐位判断是否为1来计数。例如整数N,通过判断 N & 1 == 1得到最低位是否为1通过判断 (N & (1 << 1)...原创 2019-11-12 08:47:14 · 311 阅读 · 0 评论