Day7 - 类与排序算法

2017-04-15  本文已影响0人  kiyoko_pq
class:定义类的关键字。

通过new关键字在堆内存中创建一个类的实例对象。
需求:描述汽车(颜色、轮胎数),描述事物其实就是在描述事物的属性和行为。

  1. 属性对应类中的变量;行为对应类中的方法(函数)
  2. 其实定义类就是定义属性和行为,属性和行为共同称为类的成员(成员变量、成员方法)
    类的特点在于封装
成员变量和局部变量的区别:
  1. 作用范围:
    成员变量作用于整个类中;局部变量作用于函数中或者语句(for)中。
  2. 在内存中的位置:
    成员变量:在堆内存中、因为对象的存在而存在,对象的消失而消失。
    局部变量:在栈内存中,函数执行完,变量消失。


排序算法

插入算法、堆排序、归并排序、希尔排序、快速排序、冒泡排序、选择排序

代码示例
class Demo{
public static void main(String... args){
int[] arr = {5,4,3,2,1,-100,99,-70,34,7,8};
}
public static void swap(int[] arr,int index1,int index2){
int temp = arr[index1];
arr[index1] = arr[index2];
arr[index2] = temp;
}
//冒泡排序:相邻的相比较
public static void bubbleSort(int[] arr){
for(int i = 0;i<arr.length-1;i++){
for(int j = 0;j<arr,length-1-i;j++){
if(arr[j]>arr[j+1]){
swap(arr,j,j+1);
}
}
}
}
//选择排序
public staitc void selectSort(int[] arr){
for(int i = 0;i<arr.length-1;i++){
for(int j = i; i<arr.length-1;j++){
if(arr[j]>arr[j+1]){
swap(arr,j,j+1);
}
}
}
}

冒泡图解

冒泡排序图解.png
选择排序
选择排序图解.png
上一篇 下一篇

猜你喜欢

热点阅读