原创 c/c++中排序的使用之—sort

sort sort是STL中提供的算法,頭文件爲#include<algorithm>以及using namespace std; 函數原型如下:template <class RandomAccessIterator> void s

原创 _int64類型的使用

範圍 int類型範圍爲[-2^31,2^31),即-2147483648~2147483647,unsigned類型範圍爲[0,2^32),即0~2147483648,當需要表示的整數小於10位時可以使用。 當需要表示的整數大於10位時,

原创 最長有序子序列—動態規劃算法

動態規劃使用範圍:(http://baike.baidu.com/view/28146.htm) 任何思想方法都有一定的侷限性,超出了特定條件,它就失去了作用。同樣,動態規劃也並不是萬能的。適用動態規劃的問題必須滿足最優化原理和無後效性。

原创 輾轉相除法(歐幾里得算法)示意圖

通過輾轉相除,最後得到兩個數的最大公約數 算法如下: int gcd(int da,int xiao) { int temp; while (xiao!=0) { temp=da%xiao;

原创 結構struct動態數組創建與操作

在做hdoj的1009,本來這道題目不是很難,可是對於struct動態數組操作不是很熟,做了很久,在這裏記錄一下,避免下次繼續出錯。 FatMouse' Trade Time Limit: 2000/1000 MS (Java/Other

原创 c++中pow/sqrt需要小心的細節

在做HDOJ2045不容易系列之(3)—— LELE的RPG難題的時候,發現規律爲 F(n)+F(n-1)=3*2^(n-1),原本代碼如下 #include <stdio.h> #include <math.h> _int64 a[51

原创 Nim-sum原理及應用

算法介紹: Nim遊戲是指兩個對手在m個堆中輪流隨意從某一個堆中拿出n個元素,假定兩個對手都是足夠聰明,直至最後一次取的人將所有元素取出,此人取得勝利。與之相反的是Misere遊戲,相同的遊戲規則,但是最後一次取的人將落敗。 爲了解決這個

原创 c/c++中排序的使用之—qsort

qsort qsort包含在頭文件#include<stdlib.h>中,函數原型如下: void qsort ( void * base, size_t num, size_t size, int ( * comparator ) (

原创 c語言位運算

在c語言中,可以通過 "&"," |"," ^"," ~"," <<"," >>",分別表示與,或,異或,非,左移,右移。對數進行按位運算時,可以直接使用,而不必把數轉換成二進制,例如求兩個int數的按位異或後的結果可以寫成 int a

原创 C1-Arrays and String【Cracking the Coding Interview 習題解答】

Cracking the Coding Interview 習題解答 Chapter 1 1.1 Implement an algorithm to determine if a string has all unique charac

原创 圖搜索——深度優先與廣度優先

圖搜索的方法有兩種,一種是深度優先,一種是廣度優先 由於這兩種搜索算法在最壞時間的複雜度都接近於窮舉,因此在算法中使用剪枝非常重要。 區別 1)回溯法       =   深度優先   +   剪枝       分支限界   =   廣度

原创 Windows7更改替換cmd(powershell)字體完全方法教程

       最近在windows底下弄一些事情,發現cmd實在太看不下去了,果斷弄了一下,不過雖然只是換字體,因爲網上教程不是很全面,過程也挺艱辛的,記錄一下。        (一)首先得有一些好看的字體,推薦            

原创 【hadoop】大規模中文網站聚類kmeans的mapreduce實現(下)

         接上一篇,上一篇主要是計算tfidf,下篇主要是文檔向量的建立以及kmeas的實現。 四 網頁向量以及初始中心點選取         網頁向量以及初始中心點的選取在 DocumentVetorBuid 中的一個 Mapr

原创 大規模高能效圖遍歷: 一種高效的數據密集型超級計算方法

Large-Scale Energy-Efficient Graph Traversal: A Path to Efficient Data-Intensive Supercomputing 作者: Nadathur Satish, Chan

原创 幾種排序總結(下)——線性時間排序

線性時間排序 計數排序           計數排序的前提是確定輸入範圍大小爲0~k。在這個前提下,我們可以使用計數的方法對數組進行排序,而不是使用比較。算法思想如下:因爲輸入數組a[]中的元素範圍固定,因此可以使用一個大小爲k的數組c對