随笔分类 - 数据结构与算法
摘要:如何用一句话清晰明了的介绍shell排序呢? 从第一个元素开始,对间距为h的元素进行排序,排好后再从第二个元素与间隔h的元素开始往后排......直到排到第h个元素,这样就能保证所有元素都按间隔h排了一遍,保证元素与间隔h的元素之间是有序的。然后按h = (h-1)/3不断缩小h再排序一遍,缩小一次排一遍,一点点缩小间隔到保证间隔为1的元素之间都是有序的。 这样较直接插入排序而言,减少了数组元素的移动次数。======================================================package sort_1;public class ShellSort {..
阅读全文
摘要:package sort_1;public class MergeSort1 { //利用归并排序算法 public static void mergeSort(DataWrap[] data) { sort(data,0,data.length-1); } /** * * @param data 待排序的数组 * @param left 待排序的数组的第一个元素 * @param right 待排序数组的最后一个元素 */ private static void sort(DataWrap[] dat...
阅读全文
摘要:转自:http://www.spasvo.com/news/html/2013110102249.html解释:程序调用自身的编程技巧叫做递归。 程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。 递归的三个条件: 1、边界条件 2、递归前进段 3、递归返回段 当...
阅读全文
摘要:串(String)是有零个或多个字符组成的有限序列长度:串中字符数目的个数空串: 0个字符长度的字符串 "" . 不同于空格串" " ,空格串是有长度的
阅读全文
摘要:众所周知,计算机底层的数据都是0和1.那么我们在输入数字的时候,要交给计算机处理,首先要转化成计算机能识别的0和1的形式。那么文字是怎么样转化成0和1的呢?通过字符集。常用的字符集是ASCII,每个字母每个符号都对应一个8位(为表示一些特殊的字符,将原来的7位扩展成8位)的二进制数,存到计算机中时对照字符集将一堆二进制数存进去。取出显示的时候,再对照字符集将二进制转化成字符集中定义的语言。可以ASCII字符集的二进制值只有8位数字,也就是说只有256个字符。这让成千上万的汉字情何以堪,怎么在计算机界混?于是,又定义了16位二进制字符集的unicode,这样就可以对应6.5万多个字符了。剩下的空
阅读全文

浙公网安备 33010602011771号