08 基本元素 数组和指针
来源:互联网 发布:scratch 2.0 for mac 编辑:程序博客网 时间:2024/06/05 14:56
重点在于循环嵌套的理解和使用
排序:
选择冒泡 二分法
选择:
class ArrayTest1
{
publicstatic void main(String[] args)
{
int[]arr = {5,1,6,4,2,8,9};
intmax = 0;
inttemp;
for(int x = 0; x<arr.length-1 ; x++ )
{
for(int y = x+1 ; y <arr.length ; y++ )
{
if(arr[y]>arr[x])
{
temp= arr[y];
arr[y]= arr[x];
arr[x]= temp;
}
}
}
for(int a : arr )
{
sop(a);
}
}
publicstatic void swap(int a , int b) //注意 这个函数是没有效果的
{
inttemp;
temp= a;
a= b;
b=temp;
}
publicstatic void sop(Object obj)
{
System.out.println(obj);
}
}
冒泡
class ArrayTest2
{
publicstatic void main(String[] args)
{
int[]arr = {5,1,6,4,2,8,9};
inttemp;
for(int x = 0; x<arr.length ; x++ )
{
for(int y = arr.length-1 ; y > x ; y-- )
{
if(arr[y]<arr[y-1])
{
temp= arr[y];
arr[y]= arr[y-1];
arr[y-1]= temp;
}
}
}
for(int a : arr )
{
sop(a);
}
}
publicstatic void sop(Object obj)
{
System.out.println(obj);
}
}
外圈是大体控制内圈是精细控制
查找:
折半条件是对有序数组的查找
注意:
跳出循环的条件是max>=min
原因是如果没有则说明这个数字在数组中的某两个相邻数字之间
设这两个数字为a和b
则该数字c为:
a<c<b 那么a为min b为max mid在a上
当第一次比较的时候 c>a min向右移动此时mid min max重合都在b处
但依然没有找到
当第二次比较的时候 mid在b上 c<b max向左移动此时max<min 这样就可以跳出了说明没找到
class ArrayTest4
{
publicstatic void main(String[] args)
{
int[]arr = {3,1,5,4,2,9};
intflag = halfSearch(2,arr);
sop(flag);
}
publicstatic int halfSearch(int a, int[] arr)
{
int[]myarr = selectSort(arr);
intmin,mid,max;
min= 0;
max= myarr.length-1;
mid= (min+max)/2;
//数组从大到小还是从小到大 是对程序有影响的 要理解才能变通!
while( a != myarr[mid])
{
if(a>myarr[mid])
{
max= mid-1;
}
elseif (a<myarr[mid])
{
min= mid+1;
}
if(min>max)
{
return-1;
}
mid= (min+max)/2;
}
returnmid;
}
publicstatic int[] selectSort(int[] arr)
{
inttemp;
for(int x = 0; x<arr.length-1 ; x++ )
{
for(int y = x+1 ; y <arr.length ; y++ )
{
if(arr[y]>arr[x])
{
temp= arr[y];
arr[y]= arr[x];
arr[x]= temp;
}
}
}
returnarr;
}
publicstatic void sop(Object obj)
{
System.out.print(obj);
}
}
进制转换(原理已述)
- 08 基本元素 数组和指针
- 数组元素的指针和数组的指针
- 数组的指针和数组元素的指针。
- 用指针计算数组元素的和
- 数组、指针和字符串:指向数组元素的指针和指针数组
- 数组、指针和字符串:指向数组元素的指针和指针数组
- 数组指针操作元素
- 指针作为数组元素
- 数组指针和指针数组的区别,以及如何利用他们访问数组里面的元素
- 数组指针与数组元素的指针
- 二十九、数数组、指针和字符串:指向数组元素的指针和指针数组(左值概念)
- 数组元素求和,指针和引用的应用,共四种方法
- C语言学习笔记之指向数组元素的指针和指向数组的指针
- C语言——数组指针和通过指针引用数组元素的方法总结
- 使用指针访问数组元素
- 指向数组元素的指针
- 指针法引用数组元素
- 使用指针输出数组元素
- 从NN到RNN再到LSTM(1):神经网络NN前馈和误差反向传播
- QuartZ Cron表达式
- Android深入浅出之Audio 第二部分 AudioFlinger分析
- css3模拟微信摇一摇
- Webservice讲解
- 08 基本元素 数组和指针
- Java用freemarker导出word
- Mysql双机热备主从配置
- emit发射信号 在信号中以&引用作为参数
- 09 面向对象 类
- 千呼万唤始出来,OpenDaylight Lithium版本发布
- AudioManager
- 10 面向对象 对象及其运行
- java☞基本数据类型