java基础 - 冒泡排序,随机数算法】的更多相关文章

最近开始准备面试,所以将Java基础复习一遍,又学习了冒泡排序 冒泡排序的基本思想是,对相邻的元素进行两两比较,顺序相反则进行交换,这样,每一趟会将最小或最大的元素“浮”到顶端,最终达到完全有序 java代码: public class MPSort { public static void main(String[] args){ int[] arrayNum = array(); mpSort(arrayNum); for(int i=0;i<arrayNum.length;i++){ Sy…
java基础 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720908.html Ø 冒泡排序原理: 比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置: 每一次比较,都会产生出一个最大,或者最小的数字: 下一轮则可以少一次排序: 依次循环,知道结束! 冒泡排序的时间复杂度为O(n²). 代码: import java.util.Arrays; public class SortTest…
从简单做起 任何困难的事情都是由简单的一步步一件件事情堆起来 理解好算法才是最重要 1.冒泡排序: public class Test { public static void main(String[] args) { int nums []= {2,1,356,45758,346,234,5,88}; for(int i=0;i<nums.length-1;i++){ for(int j=0;j<nums.length-i-1;j++){ int temp=0; if(nums[j]>…
冒泡排序的要点: 1.多轮排序,每轮排序中选出最大的元素放在最顶端,并且下次排序不再使用该元素; 2. 使用双for循环,外层for循环控制要排序的次数(轮数), 内层for循环控制当前要排序的元素并且进行该轮排序; package com.lin.michael; import java.util.Arrays; public class Review {  public static void main(String[] args){   //冒泡排序法  int[] arr = {102,…
冒泡排序算法的运作如下:(从后往前) 比较相邻的元素,如果第一个比第二个大,就交换他们两个. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的元素. 针对所有的元素重复以上的步骤,除了最后一个. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较. 相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法. 例: 排序数列{34,4,56,17,90,65} 4,34,17,56,65,90  //第一轮 5次 4,17,34,…
1.数组的复制 //复制算法,将arr1数组的值复制给arr2数组 import java.util.Arrays; public class Test1{ public static void main(String[] args){ int[] arr1={88,99,66,55}; int[] arr2=new int[arr1.length]; for(int i=0;i<arr1.length;i++){ arr2[i]=arr1[i]; } System.out.println(&quo…
使用方法 package com.demo5; import java.util.Random; /* * 使用步骤: * A:导包 * import java.util.Random; * B:创建对象 * Random r = new Random(); * C: 获取随机数 * int num = r.nextInt(10); // 获取数据的范围:0-9 包括0,不包括10 * int num = r.nextInt(10) +1; // 获取数据的范围:1-10 * int num =…
Java中一般有两种随机数,一个是Math中random()方法,一个是Random类. Math.random();//返回0~1的中随机数值 Random random = new Random();//默认构造方法 Random random = new Random(100);//指定种子数字 实例: Random random = new Random(); 1.生成一个随机的boolean值 random.nextBoolean(); 2.生成一个随机的double值,数值介于[0,…
冒泡排序就是对一个数组进行排序. 用双层for循环就可以解决. 第一层,决定排序的次数. n个数,进行n-1次排序就行了. 第二层,把相邻的两个数比较,谁小,放到后面和下一个数字比较,谁小谁放到后面,这样,一轮循环下来,最小的一个就到最后了. 然后,第二次循环把第二小的数放到了倒数第二个. n-1次循环下来,就排好序了. package paixu; public class maopao { public static void main(String[] args) { int shuzu[…
/*   * 折半查找法:   * 思路:   * 定义三个变量记录查找范围中最大.最小和中间的索引值,每次都是使用中间索引值与要查找的目标进行对比,如果不符合,那么就不停缩小查找范围   * */  //前提:查找的序列必须是有序的  int[] arr1 = {3,5,7,10,22,45,191};  //定义三个变量记录查找的边界和中间位置,并且初始化  int min = 0;  int max = arr1.length;  int mid = (min + max)/2;  //定…