原创 快排多版本

前言:     相信,經過本人之前寫的前倆篇關於快速排序算法的文章:第一篇、一、快速排序算法,及第二篇、一之續、快速排序算法的深入分析,各位,已經對快速排序算法有了足夠的瞭解與認識。但僅僅停留在對一個算法的認識層次上,顯然是不夠的,

原创 [leetcode]sort list

/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x)

原创 ★ Linked List Cycle II -- LeetCode

證明單鏈表有環路: 本文所用的算法 可以 形象的比喻就是在操場當中跑步,速度快的會把速度慢的扣圈 可以證明,p2追趕上p1的時候,p1一定還沒有走完一遍環路,p2也不會跨越p1多圈才追上 我們可以從p2和p1的位置差距來證明,p2一定會趕

原创 single number i

class Solution { //using xor bit manipulation public: int singleNumber(int A[], int n) { // Note: The Solu

原创 堆-c++

/********************************************************************** *版權所有 (C)2014, cy。 * *文件名稱:堆.cpp *內容摘要:無 *其它說明

原创 map映射容器應用-數字和字符轉換

在很多情況下,需要實現將數字映射爲相應的字符 #include <map> #include <string> #include <iostream> using namespace std; int main() { map<int,

原创 一種高效的求平均數的算法

傳統的求平均是先求sum,此種方法(avg += (x - avg) / i;)就避免了求和的溢出 #include<iostream> using namespace std; int main(int agrc, char*agr

原创 STL-deque

deque雙端隊列容器,同vector採用線性順序存儲結構,但,採用的是分塊線性存儲結構,所有的deque用一個map塊管理 , deque的插入:*:任意元素(int。。。),it:迭代器 1、.push_back(*): 尾部添

原创 鏈表的建立

fstream fin("test.txt"); ListNode* head(0); int val = 0; while (fin >> val){ if (head == NULL){ head = new List

原创 *candy——leetcode

/* */ #include<iostream> #include<vector> //#include<algorithm> #include <windows.h> using namespace std; #define ST

原创 敏捷軟件開發之原則篇

1、我們最優化先要做的是通過儘早的、持續的交付有減脂的軟件來使客戶滿意。 2、即使到了開發的後期,也歡迎改變需求。敏捷過程利用變化來爲客戶創造競爭優勢。 3、經常性地交付可以工作的軟件,交付的間隔可以從幾周到幾個月,交付的時間間隔越短越好

原创 快速排序-c++(分別用數組和容器實現)

/********************************************************************** *版權所有 (C)2014, cheng yang。 * *文件名稱:快速排序.cpp 數組實

原创 acm-最大公約數/最小公倍數 快速算法

方法一:歐基裏德算法: #include <iostream> #include <fstream> using namespace std; int gcd(int, int); int main(int agrc, char*agvc

原创 C++11—引入nullprt

1. 引入nullptr的原因 引入nullptr的原因,這個要從NULL說起。對於C和C++程序員來說,一定不會對NULL感到陌生。但是C和C++中的NULL卻不等價。NULL表示指針不指向任何對象,但是問題在於,NULL不是關鍵字,而

原创 Copy List with Random Pointer -- LeetCode

本思路是這樣的,對鏈表進行三次掃描,第一次掃描對每個結點進行復制,然後把複製出來的新節點接在原結點的next,也就是讓鏈表變成一個重複鏈表,就是新舊更替;第二次掃描中我們把舊結點的隨機指針賦給新節點的隨機指針,因爲新結點都跟在舊結點的下一