练习题

1.short

 -32768~32767

最高位表示正负,其余部分为数值位

2.char

0~65536

都是数值位

所以char不能存储负数

char存储汉字,查询unicode编码表

2.

char a='a';

int i=a+1;//98,将‘a’转换成97再+1,char类型两个字节,int类型4个字节,向大转化。

3.数组逆序

使用min,max指针进行逆序,逆序输出并没有改变数组的内容

for( min=0, max=a.length-1;min<max;min++,max--){

int temp=a[min];//使用temp临时存储

a[min]=a[max];

a[max]=temp;

}

4.选择排序

public static void sort(int []a){

for(int i=0;i<a.length-1;i++){//外循环,控制比较的轮数,若长度为4,只需比较3次,拿0和1,2,3比较

for(int j=i+1;j<a.length;j++){内循环,控制每次比较几个元素/* 01 02 03,减少比较次数

                                                                                                 12 13

                                                                                                  23

if(a[i]>a[j]){

int temp=a[i];

a[i]=a[j];

a[j]=temp;

5.冒泡排序

public static void sort(int [] a){

for(int i=0;i<a.length;i++){

for(int j=0;j<a.length-i-1;j++){//pay attention to a.length-i-1,if length=2,j could equal to 0 and 1,but when j=1,the j+1 in a[j+1] euqal to 2,that's out of bound

if(a[j]>a[j+1]){

int temp=a[j];

a[j]=a[j+1];

a[j]=temp;

6.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容