Java算法
Java算法
CodeJiao
今之视昔,亦如后世视今。
展开
-
Java -- 将类似数组的字符串转换为数组
1. 将类似数组的字符串转换为数组1.1 方法 /** * 将类似于[1,2,3,4,5]字符串 解析为数组 */ public static String[] spiltArr(String arrStr) { // 去掉字符串所有的空格字符 arrStr = arrStr.replaceAll("\\s*", ""); // 如果arrStr=[]返回[] if (arrStr.length() &l原创 2021-11-05 01:44:59 · 1825 阅读 · 0 评论 -
Java & JavaScript 递归构建树状图(根据parentId)
1. Java & JavaScript 递归构建树状图(根据parentId)类似于实现这样的效果实现思路:第一步:找到所有根节点(parentId == null)第二步:遍历跟结点,递归生成根节点的子树1.1 JavaScript 实现export class TaskManageModal { taskId: any = ''; // 任务id parentId: any = ''; // 父级任务id children: Array<TaskMana原创 2021-06-07 20:11:08 · 2213 阅读 · 5 评论 -
Java算法 直接插入排序 -- 直接插入排序算法的非递归和递归形式实现
1. 直接插入排序插入排序的代码实现虽然没有冒泡排序和选择排序那么简单粗暴,但它的原理应该是最容易理解的了,因为只要打过扑克牌的人都应该能够秒懂。插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。1.1 算法步骤将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则原创 2021-10-09 20:37:53 · 925 阅读 · 0 评论 -
Java算法 选择排序算法 -- 选择排序算法的非递归和递归形式实现
1. 选择排序算法选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了吧。1.1 算法步骤首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。重复第二步,直到所有元素均排序完毕。1.2 动图演示1.3 代码实现(非递归和递归形式实现)package recursion;import jav原创 2021-10-09 11:47:43 · 297 阅读 · 0 评论 -
实验1: 验证歌德巴赫猜想 (统计其关键语句的执行次数(Java代码实现) & 绘制规模-执行次数散点图)
1. 验证歌德巴赫猜想1.1 什么是哥德巴赫猜想(Goldbach Conjecture)猜想:即任一大于2的偶数都可写成两个质数之和。请验证这个对于较大的偶数都是成立的。算法: goldbach(n)描述:算法验证对于小于等于n的偶数,歌德巴赫猜想都是成立的。注意,goldbach(200)并非验证200可以拆分成两个质数的和,而是验证对于所有≤n并且>3的偶数,都可以拆分成两个质数的和。1.2 源码实现:import java.io.FileWriter;import原创 2021-09-23 11:53:33 · 747 阅读 · 0 评论 -
算法基础: 进制的转换
1. 进制的转换1.1 十进制的表示对于十进制的2585.65,它可以这么表示:1.2 二进制转十进制同十进制的道理,这里举出一个示例1.3 八进制转十进制同十进制的道理,这里举出一个示例1.4 十六进制转十进制同十进制的道理,这里举出一个示例1.5 十进制转二进制...原创 2021-09-15 23:27:23 · 177 阅读 · 0 评论 -
Java--哈夫曼压缩原理
1. 哈夫曼压缩原理首先要明确一点,计算机里面所有的文件都是以二进制的方式存储的。在计算机的存储单元中,一个ASCII码值占一个字节,1个字节等于8位(1Byte = 8bit)可以参考这个网站:ASCII码在线转换计算器以"JavaJavaJavaJavaJavaJava"这个字符串为例,它在计算机内部是这样存储的(每一个字符的ASCII码转换为二进制存储起来):public static void main(String[] args) { String before原创 2021-07-30 23:13:09 · 619 阅读 · 1 评论