Tag: 排序预览模式: 普通 | 列表
08-11
21

给Java中的List排序

//java list 排序

//关键词: java list 排序

//主要用到: Collections.sort方法

package com.tom.compare;

import java.util.ArrayList;

查看更多...

Tags: List 排序

分类:学习 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 706
    排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序)

快速排序的伪代码。
/ /使用快速排序方法对a[ 0 :n- 1 ]排序
从a[ 0 :n- 1 ]中选择一个元素作为m i d d l e,该元素为支点
把余下的元素分割为两段left 和r i g h t,使得l e f t中的元素都小于等于支点,而right 中的元素都大于等于支点
递归地使用快速排序方法对left 进行排序
递归地使用快速排序方法对right 进行排序
所得结果为l e f t + m i d d l e + r i g h t

查看更多...

Tags: 面试题 排序

分类:Java&Jsp | 固定链接 | 评论: 2 | 引用: 0 | 查看次数: 1122
06-05
17

几种算法的排序和时间

public class Sort {

  public void swap(int a[], int i, int j) {
    int tmp = a[i];
    a[i] = a[j];
    a[j] = tmp;
  }

  public int partition(int a[], int low, int high) {
    int pivot, p_pos, i;
    p_pos = low;
    pivot = a[p_pos];
    for (i = low + 1; i<= high; i++) {
      if (a[i]> pivot) {
        p_pos++;
        swap(a, p_pos, i);
      }
    }
    swap(a, low, p_pos);
    return p_pos;
  }

  public void quicksort(int a[], int low, int high) {
    int pivot;
    if (low< high) {
      pivot = partition(a, low, high);
      quicksort(a, low, pivot - 1);
      quicksort(a, pivot + 1, high);
    }

查看更多...

Tags: 算法 排序

分类:学习 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 812