算法 Java

以下是为您整理出来关于【算法 Java】合集内容,如果觉得还不错,请帮忙转发推荐。

【算法 Java】技术教程文章

数据结构与算法(Java版)----排序问题

一、排序的分类 1.1内部排序:排序数据量较小,可以完全在内存中进行排序。 冒泡排序法、选择排序法、插入排序法、合并排序法、快速排序法、堆积排序法、希尔排序法、基数排序法。 1.2外部排序:排序的数据量无法直接在内存中进行排序,需使用辅助存储器(硬盘) 直接合并排序法、k路合并法、多相合并法。

DES加密算法java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77948137 由于计算机软件的非法复制,通信的泄密、数据安全受到威胁,解密及盗版问题日益严重,甚至引发国际争端,所以在信息安全技术中,加密技术占有不可替代的位置,因此对信息加密技术和加密手段的研究与开发,受到各国计算机界的重视,发展日新月异。 在系统研发过程中,有些数据对于系统或者用户来说,都是非常重要且不可泄露的,对重要数据的加密对于任何系统来说都...

AES加密算法java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77948165 AES加密算法是密码学中的高级加密标准,该加密算法采用对称分组密码体制,密钥长度的最少支持为128、192、256,分组长度128位,算法应易于各种硬件和软件实现。这种加密算法是美国联邦政府采用的区块加密标准,这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。 过多原理不做解释,可以参考(AES加密算法原理http://www.jiamisoft.com/blog/858-ae...

RSA加密算法java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77948195 RSA加密算法是目前最有影响力的公钥加密算法,并且被普遍认为是目前最优秀的公钥方案之一。RSA是第一个能同时用于加密和数宇签名的算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA加密算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥...

BASE64加密算法的java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77964763 Base64加密算法编码规则 Base64编码的思想是采用64个基本的ASCII码字符对数据进行重新编码。他将需要编码的数据拆分成字节数组,以三个字节为一组。按顺序排列24位数据,再把这24位数据分成四组,即每组6位。再在每组的最高位前补两个0凑足一个字节。这样就把一个3字节为一组的数据重新编码成了4个字节。当所要编码的数据的字节数不是3的整数倍,也就是说在分组时...

MD5加密算法的java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77967220 MD5加密算法 MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理。 MD5算法具有以下特点: 压缩性:任意长度的数据,算出的MD5值长度都是固定的。 容易计算:从原数据计算出M...

SHA1加密算法的java实现【代码】

转载自: https://blog.csdn.net/zyhlwzy/article/details/77967255 SHA1加密算法 SHA是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)密文,也可以简单的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要...

回溯算法(Java实现)

原文链接:https://www.cnblogs.com/lzxin/p/9714133.html最近有在leetcode上面做算法题,已经遇到了两道回溯算法的题目,感觉一点思路都没有,现决定将java如何实现回溯算法做一次总结。 一、什么叫做回溯算法 (摘抄于百度百科) 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到...

二分查找算法-java

//查询关键字的下标public static int bs(int[] a, int low, int high, int key) {while (low < high) {int mid = (low + high) / 2;if (key > a[mid]) {low = mid;} else if (key < a[mid]) {high = mid;} else {return a[key];}}return -1;}public static void main(String[] args) {int[] arr = {1, 3, 5, 6, 8, 9, 10, 11, 45};int key = bs(arr, 0, arr.length - 1, 6);System.out.println("key:" + key);}

十大经典排序算法Java版(动图演示)【图】

文章目录0 排序算法说明0.1 内部排序和外部排序0.2 比较类排序和非比较类排序0.3 关于时间复杂度0.4 关于稳定性0.5 名词解释:1 交换排序——冒泡排序(Bubble Sort)1.1 什么时候最快1.2 什么时候最慢1.3 算法步骤1.4 动图演示1.5 Java实现2 选择排序——直接选择排序(Selection Sort)2.1 算法步骤2.2 动图演示2.3 Java实现3 插入排序——直接插入排序(Insertion Sort)3.1 算法步骤3.2 动图演示3.3 Java实现4 插入排序——希尔...