java基础_数组常用算法
生活随笔
收集整理的這篇文章主要介紹了
java基础_数组常用算法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
?求數組最大值代碼如下
package java_test; /*求數組的最大值* */ class Sdent{public void inputMax(int [] a){int max=a[0];//max的值讓它為數組的第一個數的值for(int i=0;i<a.length;i++){if(max<a[i]){max=a[i];//誰比他大,誰就當max}}System.out.println(max);} } public class A5_7 {public static void main(String[] args){int [] a={19,12,28,65,1,78,99};Sdent nn=new Sdent();nn.inputMax(a);} }=============================================================
1.數組的復制,把數組A的值復制給數組B
public class Change {public static void main(String[] args){int [] arrA={1,2,3,4,5,6,7,8};int [] arrB= new int[arrA.length];for(int i=0;i<arrA.length;i++){arrB[i]=arrA[i]; }for(int i=0;i<arrB.length;i++){System.out.println(arrB[i]);}} }?
2.查找算法(搜索)
package java_test; import java.util.*; public class Search {public static void main(String[] args){Scanner in =new Scanner(System.in);System.out.println("請輸入你要查找的學生姓名");String name=in.next();String [] arr={"張三","李四","王二","麻子","小七"};boolean flag=false;for(int i=0;i<arr.length;i++){if(arr[i].equals(name)){flag=true;break;} }if(flag){System.out.println("找到了");}else{System.out.println("沒有這個學院存在");}} }3.插入算法
package java_test; import java.util.*; public class arrayTest {public static void main(String args[]) {Scanner in = new Scanner(System.in);int [] arr={1,3,5,7,9,77};//現在是按照從小到大生序排列的System.out.println("請輸入要插入的值");int num=in.nextInt();arr[arr.length-1]=num;//給數組最后一個數組附上我們輸入的值for(int i=arr.length-1;i>0;i--){if(arr[i]<arr[i-1]){int t=arr[i]; /*這三句代碼交換位置 */ arr[i]=arr[i-1];arr[i-1]=t;}else{break;//第一次循環也就是輸入的值和數組倒數第二個值比,即a[5]和a[4]比,如果比他大,if不成了,直接break跳出for循環}}for(int i=0;i<arr.length;i++){System.out.println(arr[i]);}} }
4.冒泡排序
挨著的兩個兩兩相比,比arr.length-1次,選出一個最大(小)的值,然后選老二,選arr.length-1次
/*冒泡算法,從小到大排序* */ public class arrayTest {public static void main(String[] args){int [] a= {18,29,38,27,7,12,81,3};//數組長度a.length 是8for(int i=0;i<a.length-1;i++){//這是外層循環要循環length-1次才能完事for(int j=0;j<a.length-1;j++){//這層循環每次把最大的選出來if(a[j]>a[j+1]){int t=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(int i=0;i<a.length;i++){System.out.println(a[i]);}} }
5.選擇排序
?
/*選擇排序* */ public class arrayChooseTest {public static void main(String[] args){int a[]={87,38,6,72,17,26,77,56};for(int i=0;i<a.length-1;i++){for(int j=i+1;j<a.length;j++){if(a[i]>a[j]){int t=a[i];a[i]=a[j];a[j]=t;}}}for(int i=0;i<a.length;i++){System.out.println(a[i]);}} }
轉載于:https://www.cnblogs.com/youning/p/6738984.html
總結
以上是生活随笔為你收集整理的java基础_数组常用算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 启用第三方Chrome插件
- 下一篇: Win10 UWP开发系列:解决Win1