zoukankan      html  css  js  c++  java
  • 【数据结构排序】之二交换排序

    1、交换排序包括冒泡排序和快速排序两种方式

    2、所谓交换排序就是通过两两比较待排序元素的关键字,发现两个元素的次序相反时即进行交换,直到没有反序的元素为止。

    3、                                                                                    冒泡排序

    注意:冒泡排序每趟产生的有序区一定是全局有序区域,也就是说每趟产生的有序区中所有元素都归位了。

    /*

    核心代码

    */

    void bubbleSort(int array[],int arrayLength) {

    int length = arrayLength;
    	boolean flag = true; //一个标记
    	for (int i = 0; i < length-1 && flag; i++) {//加这个条件就是当有序的时候就不用重复后面的操作了
    	   flag = false;//进入循环体,就置为false
    	   for (int j = 0; j < length - i - 1; j++) {
    		if (array[j] > array[j + 1]) {
    		  swap(j, j + 1, array);// 相邻的两个元素比较,将大的放到最右边
    		  flag = true;//存在反序的就将flag置为true
    		}
    	  }
    	}
    }
     void swap(int oneIndex, int anotherIndex, int array[]) {
    		int temp = array[oneIndex];
    		array[oneIndex] = array[anotherIndex];
    		array[anotherIndex] = temp;
    	}

    优化后的算法解决了有序数组重复比较的问题,对象能有所优化

    参考博文:http://blog.csdn.net/ysjian_pingcx/article/details/8653732

    4、

    我有个朋友是爵士音乐家,他有次跟我说:如果你不是乐队里最差的演奏者,马上换支乐队。我现在在Spotify工作,在这里我每天都觉得自己是个【狗屁程序员】,也因此我离开了上一家公司,从Spotify重头开始。当我在这里再也感觉不到自己是个【狗屁程序员】的时候,我会选择离开,然后找一个能让我再次感到自己是坨屎的地方。这种策略在我的职业生涯里确实 帮了我大忙。 ------译自 Quora
  • 相关阅读:
    php多态
    ssl certificate problem: self signed certificate in certificate chain
    test plugin
    open specific port on ubuntu
    junit vs testng
    jersey rest service
    toast master
    use curl to test java webservice
    update folder access
    elk
  • 原文地址:https://www.cnblogs.com/wycBlog/p/7132584.html
Copyright © 2011-2022 走看看