第二週學習總結

2021-10-17 10:57:22 字數 842 閱讀 5571

一、棧和佇列的簡介

先進後出(限定性操作)

棧具有後進先出的特性,如果問題解決具有先進後出的天然特性的話,則求解的演算法就要使用棧。

先進先出(限定性操作)

佇列具有先進先出的特性,如果問題解決具有先進先出的特性的話,則求解的演算法就要使用佇列。

二、對棧和佇列的認識

棧:限制在表的一端進行插入和刪除運算的線性表

棧頂和棧底:允許插入、刪除的一端稱為棧頂,另一端稱為棧底。

空棧:表中沒有元素稱為空棧

棧的運算規則:後進先出

新增元素:入棧或壓棧

刪除元素:出棧

佇列:運算受限的線性表。它只允許在表的一端進行插入,而在另一端進行刪除。

隊頭和隊尾:允許刪除的一端稱為隊頭,允許插入的一端稱為隊尾

佇列的運算規則:先進先出

佇列的儲存結構:

順序對壘-----迴圈佇列

鏈佇列三、棧與佇列的相同點和不同點

二分查詢法就是在一組已經完成排序的資料(array)中,如果需要查詢某一特定資料(value)是否存在的時候,設定兩個上下限(max,min)開始的時候在陣列的最前和最後,把需要查詢的值跟這兩個位置的中間位置資料(array[(max+min)/2])進行對比,如果value >array[(min+max)/2] ,則縮小範圍使得min=(min+max)/2,反之,如果valueint binary(t arr, int size, t value)

else

mid=(max+min)/2;

std::cout<< "max: "<>1」相當於「/2」

int l=1,r=11;

while(l<=r)

一、課堂總結

第二週學習總結

在本週,學習了物件導向的三大特徵,封裝,多型,繼承 讓我感覺到學習 的不易,基礎實在是很重要,現記錄本週學習過程 現的問題以及解決注釋。1.構造方法與成員方法的區別 成員方法 一般實現對類中成員變數的操作,提供某些功能,有返回值型別,通過物件呼叫!構造方法 一般是給物件的資料進行初始化,沒有返回值,...

第二週學習總結

本週主要學習的是 1棧與佇列 2二分法 3位運算 首先要明白棧和佇列之間的區別,與棧相比佇列是先進先出的,先進去的就會先出來,而棧則與之不同,棧的進出順序與佇列不同並不是先進先出的有序關係,二十順序不定,候後進的可能先出。一般線性表 棧 邏輯結構 一對一 一對一 儲存結構 順序表 鍊錶 順序棧 鏈棧...

第二週學習總結

貪心演算法的分類 類中的建構函式以及new和delete 感悟1 追求最大利潤 這種題目的一般會有利潤和時間兩個變數 解決思想一般是兩種,第一種是求出最大的平均利潤,第二種是按 排序追求最大利潤。在本週所做的b題屬於第二種,每個商品都有最晚賣出時間與利潤,每天只能賣乙個商品,而我在這個題中一開沒讀懂...