今天學習的內容有:vector set map和string。
vertor:
vector可以認為是乙個不定長的陣列
使用前需要新增標頭檔案:
# include using namespace std;
初始化定義方法:
一些vector的函式:vector ve;
vector ve;
vector ve;
vector v[ maxn ]
set:ve. clear () //移除容器中所有資料。
ve. push_back (i) //存入資料i.
ve. seiz () //返回陣列的大小。
ve. begin () //返回迭代器的第乙個資料。
ve.end () //返回迭代器的最後乙個資料。
set即是集合 滿足集合相應的條件,具有唯一性。
內部使用平衡二叉樹,效率較高,插入與刪除的複雜度都
是o(log(n))級別,內部會自動排序。
標頭檔案:
# include using namespace
初始化:
se. begin () 返回指向第乙個元素的迭代器set se;
set se;
set s[ maxn ]
se. clear () 清除所有元素
se. count () 返回某個值元素的個數
se. empty () 如果集合為空,返回true
se.end () 返回指向最後乙個元素之後的迭代器,不是最後乙個元素
se. erase () 刪除集合中的元素
se. find () 返回乙個指向被查詢到元素的迭代器
se. insert () 在集合中插入元素
se. max_size () 返回集合能容納的元素的最大限值
se. size () 集合中元素的數目
se. swap () 交換兩個集合變數
迭代器:
迭代器
for(set :: iterator z = se. begin (); z != se.end ();
例題
map:
c++中map提供的是一種鍵值對容器,裡面的資料都是成對出現的:每一對中的第乙個值稱之為關鍵字(key),
每個關鍵字只能在map中出現一次;第二個稱之為該關鍵字的對應值。
內部使用的是平衡二叉樹,所以插入的複雜度
是o(long(n))級別的。
string:
成長之路 Day1
今天算不上完整的一天,上午有了這個想法,下午才貫徹執行。但多多少少都記錄一下 1.學了慕客網上js高階篇的內建物件,並完成了隨之的程式設計練習。明天看完剩下的兩個知識點,再看別的。2.找工作這方面又跑去boss直聘了,亂七八糟找了一通,因為怕找不到工作方向一直不敢定專一的乙個,徒增負擔,什麼時候能確...
ACM成長之路(乾貨) 我愛ACM,與君共勉
前幾天在網上看到,轉過來時刻督促一下自己。acm隊不是為了一場比賽而存在的,為的是隊員的整體提高。大學期間,acm隊隊員必須要學好的課程有 l c c 兩種語言 l 高等數學 l 線性代數 l 資料結構 l 離散數學 l 資料庫原理 l 作業系統原理 l 計算機組成原理 l 人工智慧 l 編譯原理 ...
python成長之路day08
一 集合關係運算與常用操作 二 檔案操作 關係運算 friends1 friends2 1 取二者的共同好友 交集 res friends1 friends2 print res 2 取二者所有的好友有哪些 並集 res friends1 friends2 print res 3 去二者所有的好友有...