星期五, 10月 13, 2006

LaTeX

用context + MikTeX 來做一個練習,效果還不錯,雖然還沒把編輯寫成一個執行鍵,只能慢慢的用指令來complie , 不過也蠻高興的,克服了不少問題,也大概知道怎麼做會比較好一點了

最該克服的是,LaTeX的常用符號...如\ {} ,我在一般的習慣上,我並不是用盲打來打這些符號,所以我可能需要練習盲打來克服吧

---
LaTeX比想像中的好玩,但是指令也比想像中的多..orz

星期三, 10月 11, 2006

聽錄音

在Josh 的blog中有一篇是這樣子的金次有感 約十分鐘,有很大的感觸

君子務本,本立而道生 -- 這個我的想法很簡單,我以前就有這樣子的想法,道家為兩個字"自然"自然不是什麼事都不做,而是每件事都照著其法則運行著,白話一點,就是每個人做好自己的本份,我深感認同,雖然以前有過類似的想法,但是陳金次教授的論述更為完備

大學之道:在明明德,在親民,在止於至善。我用自己解法來看,明白自己要做的什麼,做到最好(差很多,不過我喜歡自己的解釋),做到最好,我捫心自問,我想做的事,我應該可以做的更好

--
大學之道:在明明德,在親民,在止於至善 ^^

星期二, 10月 10, 2006

水準上的差異

前幾天課堂上教了使用recursive的 binary search (在有序區間),於是,我照了自己的想法來寫一個簡單的function


bool BinarySearch(int* a, int left, int right,const int SearchValue){
if(left==right){
if(a[left]=SearchValue) return true;
else return false;
}
else if(left int pivot=(left+right)/2;

if(a[pivot]==SearchValue) return true;
else if(a[pivot]>SearchValue) BinarySearch(a,left,pivot,SearchValue);
else BinarySearch(a,pivot,right,SearchValue);
}
else ;
}


再來看看我參考STL源碼剖析的p.376 lower_bound function 的改良寫法

bool BinarySearch(int *a,int left,int right,int value){
int len=right-left;
while(len>0){
int half = len >> 1; /* half/=2 */
int middle = left + half;

if(a[middle]==value){
left=middle;
break;
}
else if(a[middle]< value){
left = middle+1;
len = len - half - 1;
}
else len = half;
}

if(a[left]==value) return true;
else return false;
}



技巧可謂高下立判