原创 快速排序(Quick Sort)C語言版

快速排序算法是最早由圖靈獎獲得者Tony Hoare設計出來的,他在形式化方法理論的發明中都有卓越的貢獻,是上世紀最偉大的計算機科學家之一。而這個快速排序算法只是他衆多貢獻中的一個小發明而已。更值得一提的是,我們現在學習的這個快速排序

原创 C/C++內存管理

請先閱讀下邊一段代碼,並思考所附的練習題: int globalVar = 1; static int staticGlobalVar = 1; void Test() { static int staticVar = 1; in

原创 No.38 我與代碼的日常:隊列的基本操作(C語言版)

#include <stdio.h> #include <stdlib.h> #include <assert.h> typedef int QDataType; //鏈表節點 typedef struct QNode { QD

原创 No.37 我與代碼的日常:單鏈表面試題

1.給定一個帶有頭結點 head 的非空單鏈表,返回鏈表的中間結點。如果有兩個中間結點,則返回第二個中間結點。 輸入:[1,2,3,4,5] 輸出:此列表中的結點 3 (序列化形式:[3,4,5]) 返回的結點值爲 3 。 (測評系統

原创 No.36我與代碼的日常: 初識C++

昨天我正式地接觸到了C++,我瞭解到了它與C語言的不同。以下是我初識C++的學習筆記。 1.C++的輸入輸出風格 //C++的輸入與輸出 #include <iostream> #include <stdlib.h> using n

原创 No.35 我與代碼的日常: 數據結構——排序

“排序”在我們日常生活中用得可謂很頻繁了,例如:淘寶上價格排序,學生成績排序,網站點擊量排序。往往需要我們排序的數據有很多,我們也不可能人爲地進行排序。因此,我們可以利用計算機,進行高效率的數據排序。 1.插入排序: void Ins

原创 No.34 我與代碼的日常:Romeo的迷你通訊錄(v1.0.1版)

學習完了單鏈表的基本操作後,我掌握了其增刪改查等基本操作。基於這些操作,我用實現了簡易通訊錄管理系統。包含初始化、添加、刪除、打印、搜索、排序和修改等功能。以下爲源代碼(測試環境爲VS2013): #define _CRT_SECUR

原创 No.33 進程:計算機科學最成功的的概念之一

學過編程的人對“Hello world”程序已經再熟悉不過了,但是大家有沒有思考過一個問題,我們寫的程序爲什麼能在計算機上運行呢?在這裏,我想引進一個概念:進程。 爲什麼說進程是計算機中最重要和最成功的概念之一呢?因爲“進程”,我們纔

原创 No.32 我與代碼的日常:堆的基本操作

學習不易,需要堅持。 #pragma once #include <stdlib.h> #include <stdio.h> #include <assert.h> typedef int HPDataType ; typedef

原创 No.31 我與代碼的日常:鏈表的基本操作(雙向+帶頭+循環)

學習不易,需要堅持。 //DList.h #pragma once typedef int DLDataType ; typedef struct DListNode { //結點 DLDataType val ; str

原创 No.30 辨析指針變量與地址(C語言)

在C語言裏,爲每一個變量開闢一個存儲空間時,該空間都會有一個“地址”。舉個例子,定義int a = 10 ; 則&a可以取到a的地址。該地址也是一個內容,也需要一個變量來存儲,那麼我們不妨定義一個變量來專門存儲該地址的具體內容,該變量

原创 No.29 我與代碼的日常:單鏈表的基本操作(單向+不帶頭+不循環)

學習不易,需要堅持。 //SList.h #pragma once typedef int SLDataType ; typedef struct SListNode { int data ; struct SListNode

原创 No.28 我與代碼的日常:順序表的基本操作

學習不易,需要堅持。 #pragma once #include <stddef.h> #include <stdio.h> #include <stdlib.h> #include <assert.h> typedef int S

原创 No.26 我與代碼的日常:逆轉整數,迴文字符串,迴文數字,查詢數組中遺漏數字,判斷2的冪

學習不易,需要堅持。 逆轉整數:Reverse Integer Example1: x = 123, return 321 Example2: x = -123, return -321 處理溢出: 比如整數最大值2147483