更多查找可以参考 http://www.cnblogs.com/liuling/p/2013-7-24-01.html 这是别人的资源,感觉写的很全。可以仔细研究一下。
/*
使用折半查找的前提是数据是有序(升序)的。
*/
class HalfSearchDemo
{
public static void main(String[] args)
{
int[] arr={1,...
分类:
编程语言 时间:
2016-05-12 15:46:42
阅读次数:
150
方法一:冒泡排序法
代码:
public int[] bubbleSort(int[] a){ //冒泡排序算法
//每趟不断将相邻记录两两比较,并按“前小后大”(或“前大后小”)规则交换。
int len = a.length;
for(int i = len-1;i>=1;i--){
for(int j = 0;j<=i...
分类:
编程语言 时间:
2016-05-12 15:13:26
阅读次数:
128
继上篇文章讲到插入排序和冒泡排序算法。这次来看一下选择排序。
和上两个循环一样,还是分成两套循环,外循环起指针作用,用来指定每次循环的元素值和元素序列,而内部循环则起到真正的快速排序逻辑。首先如果我们取到第i值,那么我们要与第i+1,i+2,....等元素进行对比,找到i元素后面最小的元素,与之交换位置即可,只不过这里的交换位置比较新颖,我们看下面的代码:
package cn.tg...
分类:
编程语言 时间:
2016-05-12 13:20:06
阅读次数:
164
排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。算法一:插入排序
插入排序示意图插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描...
分类:
编程语言 时间:
2016-05-12 12:01:44
阅读次数:
178
NSMutableArray *sourceArray = [NSMutableArray arrayWithObjects:@(3), @(5), @(7), @(9), @(2), @(4), @(8), @(6), nil]; //选择排序 for (int i = 0; i < source ...
分类:
编程语言 时间:
2016-05-11 18:14:52
阅读次数:
159
堆排序是对简单选择排序算法的一种改进。可以构建大顶堆(每个结点的值都大于等于其左右孩子的值)也可以构建小顶堆(每个结点的值都小于等于其左右孩子的值)。堆排自我感觉代码理解起来还是有点难,主要是如何构建一个新堆以及输出堆顶元素后,怎样调整剩余元素成为一个新堆。 1、堆排代码 2、堆调整代码 堆排测试完 ...
分类:
编程语言 时间:
2016-05-11 16:39:04
阅读次数:
205
本文就是介绍一些常见的排序算法。排序是一个非常常见的应用场景,很多时候,我们需要根据自己需要排序的数据类型,来自定义排序算法,但是,在这里,我们只介绍这些基础排序算法,包括:插入排序、选择排序、冒泡排序、快速排序(重点)、堆排序、归并排序等等。看下图: 给定数组:int data[] = {9,2, ...
分类:
编程语言 时间:
2016-05-11 12:54:24
阅读次数:
313
常见排序算法(JS版)包括: 内置排序,冒泡排序,选择排序,插入排序,希尔排序,快速排序(递归 & 堆栈),归并排序,堆排序,以及分析每种排序算法的执行时间。 index.html main.js main.js 排序效果: ...
分类:
编程语言 时间:
2016-05-08 13:48:56
阅读次数:
309
比较重要的三种基本排序其中插入排序最优,选择排序居中,冒泡排序最差package com.zzw.排序;public class Alogrithm {
public static void main(String[] args) { int[] datas = new int[10];
// 初始化数据
initData(datas);...
分类:
编程语言 时间:
2016-05-07 08:29:39
阅读次数:
132
#include
using namespace std;
template
void Swap(T & left, T & right) {
T temp = left;
left = right;
right = temp;
}
/* 简单选择排序 */
template
void SelectSort(T * arr, int n) {
for (i...
分类:
编程语言 时间:
2016-05-07 08:29:17
阅读次数:
167