A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yangkai69 中级黑马   /  2015-8-20 23:59  /  349 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

                                数组
数组是一个数据的集合,可以存放数据,数组在创建时就必须定好数组的大小
数组常用的一些操作有:
1、排序
2、查找
一下是一些常用的代码。
  1. public class SelectSort {
  2.         //创建一个数组
  3.         static int []arr={3,4,1,6,7,2,8};
  4.         public static void main(String[] args) {
  5.                
  6.         }
  7.         //选择排序法
  8.         public void selectSort1(int []arr)
  9.         {
  10.         //从小到大排列的选择排序法,其原理是把每一个arr[i]当做最小值和arr[j]进行对比,选出最小的arr[i];
  11.                 for(int i=0;i<arr.length-1;i++)
  12.         {
  13.                 for(int j=i+1;j<arr.length;j++)
  14.                 {
  15.                         if(arr[i]>arr[j])
  16.                         {
  17.                                 swap(arr,i,j);
  18.                         }
  19.                 }
  20.         }
  21. }
  22.         //冒泡排序法
  23.         public void selectSort2(int []arr)
  24.         {
  25.                 for(int i=0;i<arr.length-1;i++)
  26.                 {
  27.                         for(int j=0;j<arr.length-1-i;j++)
  28.                         {
  29.                                 if(arr[j]>arr[j+1])
  30.                                 {
  31.                                         swap(arr,j,j+1);
  32.                                 }
  33.                         }
  34.                 }               
  35.         }
  36.         //遍历数组
  37.         public void ergodic(int []arr)
  38.         {
  39.                 for(int i=0;i<arr.length;i++)
  40.                 {
  41.                         int temp=arr[i];
  42.                         System.out.println(temp);
  43.                 }
  44.         }

  45.         //寻找最大值(最小值同理)
  46.         public void selectMax(int []arr)
  47.         {
  48.                 //假设第0个为最大
  49.                 int max=arr[0];
  50.                 for(int i=1;i<arr.length;i++)
  51.                 {
  52.                         if(max<arr[i])
  53.                         {
  54.                                 max=arr[i];
  55.                         }
  56.                 }
  57.                 System.out.println("最大值是:"+max);
  58.         }
  59.        
  60.         //数组里的成员 位置 互换的方法
  61.         public static void swap(int []arr,int a,int b)
  62.         {
  63.                 arr[a]=arr[a]^arr[b];
  64.                 arr[b]=arr[a]^arr[b];
  65.                 arr[a]=arr[a]^arr[b];
  66.         }
  67.        
  68.         //折半查找:在一个按顺序排列的数组中,将n插入进去
  69.         public int halfSeach(int []arr,int n)
  70.         {
  71.                 int min=0;int max=arr.length-1;int mid=(min+max)>>1;
  72.                 while(min<max)
  73.                 {
  74.                     if(n>arr[mid])
  75.                     {
  76.                             min=mid+1;
  77.                             mid=(min+max)>>1;
  78.                     }else if(n<arr[mid]){
  79.                             max=mid-1;
  80.                             mid=mid=(min+max)>>1;
  81.                     }else {
  82.                             return mid;
  83.                     }
  84.                
  85.                 }
  86.                         return mid;
  87.         }
  88.        
  89.        
  90.        
  91.        
  92.         }
复制代码

2 个回复

倒序浏览
谢谢分享 学习了
回复 使用道具 举报
谢谢分享,总结得不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马