import java.util.Scanner;
/**
* @author 杨川
*
*/
public class Sort {
public static void main(String[] args) {
int a[] = input();
insertSort(a);
shellSort(a);
selectSort(a);
fastSort(a,0,a.length-1);
for (int k = 0; k < a.length; k++) {
System.out.print(a[k] + " ");
}
}
static void fastSort(int[]a,int s,int t){
...
1package sorting;2 3import java.util.*;4//import java.util.Comparator;5//import java.util.PriorityQueue;6//import java.util.Queue; 7 8publicclass Sorting {9/************************************序言**********************************************/ 10/** 11 * 排序方法:冒泡排序,插入排序,希尔排序,堆排序(2),归并排序(2),快排(2)...12 * */ 13 14/** 15 * 最小值函数16 * */ 17privatest...
28 【程序 28 排序算法】题目:对 10 个数进行排序程序分析:可以利用选择法,即从后 9 个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即 用第二个元素与后 8 个进行比较,并进行交换。 package cskaoyan;public class cskaoyan28 {@org.junit.Testpublic void sort() {java.util.Scanner in = new java.util.Scanner(System.in);int[] arr = new int[10];System.out.println("请输入10个数字:");for (int i = 0; i <...
总结了一份Java架构师的技能树,80%程序员都不知道如何利用这套技术树涨薪,下面展示给大家,希望看到此文的都能涨薪!
Java编程技术点:
计算机网络JVM 需要完整图谱及更多学习资料的朋友帮忙一键三连后,看下图加小助理VX(gyhycx7980)即可全部100%免费领取到! 23种设计模式
多线程与高并发算法
除此以外还有分布式、微服务、Redis、MySQL、zookeeper等等,全都在该图谱里。注意:下文主要是我个人的总结方法经验(面试学...
1、冒泡排序 代码实践:
package com.company;import java.util.Arrays;/*** 冒泡排序*/
public class Main {public static void main(String[] args) {int[] arr = {7, 6, 5, 4, 3};System.out.println(Arrays.toString(arr));for (int i=0;i<arr.length-1;i++){ //比较趟数for (int j = 0; j < arr.length-1-i; j++) { //比上一次比较的趟数少一次if (compare(arr[j], arr[j + 1]) > 0) {int t = arr[j];arr[j] = arr[j + 1];a...
public static void main(String[] args) {int[] nums = { 10, 2, 32, 9 };// 冒泡排序for (int i = 0; i < nums.length - 1; i++) {for (int j = 0; j < nums.length - 1 - i; j++) {if (nums[j]>nums[j+1]) {int temp = nums[j];nums[j] = nums[j+1]; nums[j+1] = temp;}}}System.out.println(Arrays.toString(nums));}
冒泡排序
图解编码实现
public class Sort {public static void main(String[] args) {//通过冒泡排序给当前的数字进行排序(升序)int arr1[] = {30,20,15,12,18,100};//进行多少次冒泡过程for (int i = 0; i < arr1.length-1; i++) {//将数组中的所有元素都通过遍历拿出来(进行多少次冒泡过程)boolean sorted = true;//每次冒泡之前,都假设本次无需区间有序了//遍历无序区间,做一次冒泡过程for (int j = 0; j < arr1.length-...
数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名、数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密。数据摘要算法也被称为哈希(Hash)算法、散列算法。今天,我们就开始java中摘要算法的学习。
项目结构如下:
SHA算法 安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准(Digital Signature Standard DSS)里面定义的数字签名算法(Digital Si...
数组和算法
查找算法
线性查找
...
二分查找
二分查找要求数据结构是有序的。
package com.parzulpan.java.ch03;/*** @Author : parzulpan* @Time : 2020-11-17* @Desc : 二分查找*/public class BinaryFind {public static boolean binaryFind(int[] arr, int number) {boolean isFlag = false;int start = 0, end = arr.length - 1;while (start <= end) {int mid = (start + end) / 2;if (arr[mid] == number) {isFlag = true;b...
Java基础算法之找出一段字符串中所有回文串、最长的回文串以及最长回文串长度回文的含义是:字符串从左向右看和从右向左看是相同的,例如:abba,1234321。import lombok.extern.slf4j.Slf4j;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;/*** 获取最长回文串* 回文的含义是:子串从左向右看和从右向左看是相同的,例如:abba,1234321。** @author : Create by 半路勇者 ...
https://blog.csdn.net/gjwwansui/article/details/80365221
众所周知,Java的垃圾回收是不需要程序员去手动操控的,而是由JVM去完成。本文介绍JVM进行垃圾回收的各种算法。1. 如何确定某个对象是垃圾1.1. 引用计数法
1.2. 可达性分析2. 典型的垃圾回收算法2.1. 标记-清除算法(Mark-Sweep)
2.2. 复制算法(Copying)
2.3. 标记-整理算法(Mark-Compact)
2.4. 分代收集算法(Generational Collection)3. 典型的垃圾收集器3.1. Serial/Se...
1 public class LRUCache<K, V> extends LinkedHashMap<K, V> {2 private final int CACHE_SIZE;3 4 public LRUCache(int cacheSize){5 super((int)Math.ceil(cacheSize / 0.75) + 1,0.75f,true);6 CACHE_SIZE = cacheSize;7 }8 9 @Override
10 protected boolean removeEldestEntry(Map.Entry<K, V> entity) {
11 return size() > CACHE_SIZE;
12 }
13
14 public static void main (Stri...
问题:
/** * 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和,并顺序打印子序列。 * 示例: * 输入: [-2,1,-3,4,-1,2,1,-5,4], * 输出: 6,并打印连续子序列 * 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 */
测试main方法: public static void main(String[] args) {int[] data={1,-2,3,4,-8,12,2};System.out.println(subSequenceSum01(data));System.out.println(subSe...
1:StringBuffer(掌握)
(1)用字符串做拼接,比较耗时并且也耗内存,而这种拼接操作又是比较常见的,为了解决这个问题,Java就提供了
一个字符串缓冲区类。StringBuffer供我们使用。
(2)StringBuffer的构造方法
A:StringBuffer():无参构造方法
B:StringBuffer(int size):指定容量的字符串缓冲区对象
C:StringBuffer(String str):指定字符串内容的字符串缓冲区对象
(3)StringBuffer的常见功能(自己补齐方法的声明和方法的解释)
A:添...
Java基础排序—选择排序
package weekNumber4;
import java.util.Arrays;
//选择排序
public class Test6_SelectionSort {public static void main(String[] args) {int[] a = {3,4,1,6,7,5,3,8,9};int[] b = method(a);System.out.println(Arrays.toString(b));}public static int[] method(int[] a) {//循环次数为找出剩余数组最小值次数for(int i=0;i<a.length-1;i++) {//假设a[i]为数组最小值,赋值给tempint temp = a[i];//即...