原创 Emacs 配置文件

emacs 的配置文件在 .emacs.d 文件夾下的,init.el,是用lisp語言寫的。下圖其他爲插件安裝位置。 以下是個人的之前學習後,在配置的init.el。 包含了主題,自動補全符號,字體,隱藏toolbar,

原创 Emacs 互換CapsLock和Alt(option)鍵位

相比於Vim,更加喜歡Emacs,Emacs有豐富的插件,效率高,也很漂亮,雙手鍵盤配合操作比較快,基本都不需要鼠標。emacs24 mac air 上使用, 而且在Eclipse,Android Studio裏面均可以設置em

原创 遞歸算法改進---表存儲代替冗餘遞推

/**求解遞歸關係 *Sum=C(0)+C(1)+...+C(N-1); 即求和運算 *C(N)=(2/N) Sum +N **/ public static double eval( int n) { if (n == 0)

原创 快速選擇

選擇第K個最大(小)元 private static <AnyType extends Comparable<? super AnyType>> void quickSelect(AnyType a, int left, int righ

原创 String,StringBuilder,StringBuffer

String constructor String literals String s="abc"//use string literal 1: String s= new String(); 2: String (char ch

原创 實際快速排序 -分割策略

快速排序,樞紐元(比較值)理論上選哪個都可以。實際快速排序包括劃分策略 和遞歸調用。 public static <AnyType extends Comparable<? super AnyType>> void quicksort(A

原创 二叉查找樹

取自JAVA書籍,數據結構與算法分析。其中remove方法添加了理解信息。 1、整體源碼結構 public Class BinarySearchTree<AnyType extends Comparable<? super AnyType

原创 比較內存地址與內容

A == B 比較的是兩個的引用,是否指向同一塊內存地址。 A.equals(B) 比較的是A,B裏面的內容是否相同,常需要複寫 Class A 的equals 內容。 //比較A,B裏面內容是否相同 equals 方法。 public

原创 遞歸算法改進---fibonaci 函數

採用一個表代替遞歸 /** *Compute Fibonaci numbers * f(0)=1, f(1)=1 * f(n)= f(n-1)+ f(n-2); *程序效率低下,運行時間也是T(N) 成指數級增長 */ publ

原创 Inner class 內部類

class Outer { string outmember; static outmemberstatic; //如果static class inner 則只能直接獲取外部的static成員 class I

原创 排序--堆排序

/** *heapsort */ private static int leftChild(int i) { return 2 * i +1; } private static <AnyType extends Compar

原创 Enumeration基礎

//Enumberation Fundamentals // method /* *public static enum-type [] values();//returns an array *public static enum-

原创 Emacs 學習資料

常規的Emacs基本操作,網上一大推,下面主要推薦下之前幾個好的配置Emacs 1、大神配置的 ps.純英文, 很受用 http://tuhdo.github.io/index.html 2、其他 http://cmgm.stan

原创 排序--插入排序

插入排序的基本思想,假設數組前面位置的元素已經排序好,新插入一個元素a[p], 由a[p]與前面a[p-1]比較,若a[p] public static <AnyType extends Comparable<? super AnyTy

原创 二叉堆

堆是一顆完全被填滿的二叉樹,有可能的例外是在底層,底層的元素從左到右填滿。完全二叉樹 二叉堆又可分爲最大堆,最小堆。最小堆就是節點元素值小於等於兩兒子。 完全二叉樹可以用一個數組表示,a[0] 位置空出(後面有用) 對於數組任意位置i