原创 大二數據結構第八次總結----查找

                                                 查找 1.查找的基本概念 列表:由同一類型的數據元素組成的集合。 關鍵碼:數據元素中的某個數據項,可以標識列表中的一個或一組數據元素。  鍵

原创 acm第十九次樹

一、樹及二叉樹 1、樹的概念----樹的定義 一棵樹是由n(n>0)個元素組成的有限集合,其中: ①每個元素稱爲結點(node); ②有一個特定的結點,稱爲根結點或樹根(root

原创 大二數據結構第五次總結

第四章 字符串和多維數組 1.串 串:零個或多個字符組成的有限序列。 串長度:串中所包含的字符個數。 空串:長度爲0的串,記爲:" "。 子串:串中任意個連續的字符組成的子序列。 主串:包含子串的串。

原创 acm第二十三次圖的遍歷

一、深度優先與廣度優先遍歷   從圖中某一頂點出發系統地訪問圖中所有頂點,使每個頂點恰好被訪問一次,這種運算操作被稱爲圖的遍歷。爲了避免重複訪問某個頂點,可以設一個標誌數組visited[i],未訪問時值爲false,訪問一次後就

原创 ACM第2次STL(set和map)

一、set和multiset 1.區別:set容器中不允許元素重複,multiset可以允許重複 2.操作: 頭文件#include set<數據類型>s; s.size() – 返回容器內元素個數。 s.empty() – 容器

原创 大二數據結構第三次總結

第二章 線性表 1.順序表代碼實現: const int Maxsize=100; template class SeqList{  private:   T data[MaxSiz

原创 acm第十七次被遺忘的三分

最近的做的題都是二分,以爲自己看懂了PPT就會了,結果a題給了一個下馬威,沒辦法的我,求助了百度,研究半天也算一知半解,有了思路,後續又做了幾個題。又到寫博客的時候了,寫寫三分法吧。 一、三分法定義 當需要求某凸性或凹形函數的

原创 acm第一次STL(講述隊列與優先隊列)

一、隊列(queue) 1.含義:是一種從頂端取出元素,從尾端加入元素的一種新的數據結構 2. 頭文件: #include 定義:queue <數據類型> 變量名; 如:queue q; 操作: empty() – 返回boo

原创 acm第十五次新二分法

一、二分查找算法 ①簡單定義:在一個單調有序的集合中查找元素,每次將集合分爲左右兩部分,判斷解在哪個部分中並調整集合上下界,重複直到找到目標元素。 ②時間複雜度:O (logn),優於直接順序查找O(n) ③基本思想:二分查找的基

原创 大二數據結構第六次----樹

                                                      樹 1.樹的定義 樹:n(n≥0)個結點的有限集合。 當n=0時,稱爲空樹; 任意一棵非空樹滿足以下條件: ⑴ 有且僅有一個特定

原创 acm第3次STL(vector)

一、vector 1、定義:動態數組,動態改變儲存空間的大小,定義的數組可以沒有界限 2、應用: 頭文件#include 定義:vector <數據結構> 變量名; 如:vector v; 操作: empty() – 表示vec

原创 大二數據結構第四次總結

第三章 棧和隊列 1.棧: 棧:限定僅在表尾進行插入和刪除操作的線性表 空棧:不含任何數據元素的棧。 允許插入和刪除的一端稱爲棧頂,另一端稱爲棧底。 2.順序棧的聲明 const int MAX_SIZE=

原创 acm第二十二次圖論算法基本概念

基本: 一、什麼是圖?   很簡單,點用邊連起來就叫做圖,嚴格意義上講,圖是一種數據結構,定義爲:graph=(V,E)。V是一個非空有限集合,代表頂點(結點),E代表邊的集合。 二、圖的一些定義 (a)有向圖:圖的邊有方向,只能

原创 大二數據結構第七次總結---圖

                                                      圖 1.圖的定義 圖是由頂點的有窮非空集合和頂點之間邊的集合組成,通常表示爲: G=(V,E) 其中:G表示一個圖,V是圖G中頂點

原创 STL之棧的用法stack

頭文件#include s.empty()//如果棧爲空返回true,否則返回false s.size()//返回棧中元素的個數 s.pop()//刪除棧頂元素但不返回其值 s.top()//返回棧頂的元素,但不刪除該元素 s.p