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
  • 相关阅读:
    自定义标签的作用
    自定义标签处理器类的生命周期
    自定义标签的执行过程
    自定义标签入门案例
    JSTL核心标签库详解
    JSTL标签(核心标准库)
    动作标签
    jsp标签
    EL表达式
    JSP学习案例--,竞猜游戏
  • 原文地址:https://www.cnblogs.com/wycBlog/p/7132584.html
Copyright © 2011-2022 走看看