-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
與算法(算理與算法)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于與算法的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、關(guān)于算法與算理
什么是算理?
算理就是計(jì)算過程中的道理,是指計(jì)算過程中的思維方式,解決“為什么這樣算”,這樣算的道理是什么。算理一般由數(shù)學(xué)概念、運(yùn)算規(guī)律、運(yùn)算性質(zhì)等構(gòu)成。就是教師根據(jù)概念,性質(zhì),定義為依據(jù)對計(jì)算方法加以說明。如:小數(shù)乘法的算理就是積的變化規(guī)律,小數(shù)除法的算理就是商不變的規(guī)律。
什么是算法?
算法就是計(jì)算的方法,主要解決“怎樣計(jì)算”的問題。通常是算理指導(dǎo)下的一些人為規(guī)定的操作步驟,解決如何算得方便、準(zhǔn)確的問題。如:小數(shù)乘法的算法:先按照整數(shù)乘法算出積,再看因數(shù)中一共有幾位小數(shù)就從積的右邊數(shù)出幾位點(diǎn)上小數(shù)點(diǎn)。
整數(shù)(小數(shù))加法:算法:把相同數(shù)位對齊列出豎式,再從個位加起,滿十向前一位進(jìn)一。算理:依據(jù)數(shù)的組成意義,推出相同計(jì)數(shù)單位(分?jǐn)?shù)單位)的數(shù)才能相加減。算理也可以理解為加法交換律和結(jié)合律。整數(shù)(小數(shù))減法:算法:相同數(shù)位對齊,從個位減起,哪一位不夠減就從前一位退一,在本位上加10再減。
算理:依據(jù)數(shù)的組成和意義概念,推出相同計(jì)數(shù)單位的數(shù)才能相加減。十進(jìn)制計(jì)數(shù)法。
算理與算法的關(guān)系是什么?
算理是客觀存在的規(guī)律,算法是人為規(guī)定的操作方法;算理為計(jì)算提供了正確的思維方式,保證了計(jì)算的合理性和正確性,算法為計(jì)算提供了快捷的操作方法,提高了計(jì)算的速度;算理是算法的理論依據(jù),算法是算理的提煉和概括,它們是相輔相成的。教學(xué)中不可放棄任何一方面。
在教學(xué)中如何處理算理和算法的關(guān)系?
既要讓學(xué)生知道怎么算,又要知道為什么要這樣算,知其然又知其所以然,這是計(jì)算教學(xué)的根本。在教學(xué)時要讓學(xué)生在感悟、理解算理的基礎(chǔ)上生成、(創(chuàng)造)出算法,到最后掌握算法。
一般情況下,一個單元的起始例題,是整個單元的基礎(chǔ)和關(guān)鍵。要用足時間重點(diǎn)突破。使學(xué)生扎扎實(shí)實(shí)地理解算理,掌握算法。
二、數(shù)據(jù)結(jié)構(gòu)與算法——字符串匹配問題(KMP算法)
KMP算法也是比較著名的模式匹配算法。是由 D.E.Knuth,J.H.Morrs 和 VR.Pratt 發(fā)表的一個模式匹配算法??梢源蟠蟊苊庵貜?fù)遍歷的情況。
如果使用暴風(fēng)算法的話,前面五個字母完全相等,直到第六個字母 "f" 和 "x" 不相等。如下圖:
T = “abcdex”
j 123456
模式串 abcdex
next[j] 011111
T = "abcabx"
j 123456
模式串T abcabx
next[j] 011123
T = "ababaaaba"
j———————123456789
模式串T——— ababaaaba
next[j]————011234223
T = "aaaaaaaab"
j———————123456789
模式串T——— aaaaaaaab
next[j]————012345678
next數(shù)組其實(shí)就是求解字符串要回溯的位置
假設(shè),主串S= “abcababca”;模式串T=“abcdex”,由以上分析得出next數(shù)組為011111,next數(shù)組意味著當(dāng)主串與模式串不匹配時,都需要從第一個的位置重新比較。
KMP算法也是有缺陷的,比如主串S=“aaaabcde”,模式串T= “aaaaax”。next的數(shù)組就是012345;
當(dāng)開始匹配時,當(dāng)i= 5,j = 5時,我們發(fā)現(xiàn)字符"b"與字符“a”不相等,如上圖,j = next[5] = 4;
由于T串的第二、三、四、五位置的字符都與首位“a”相等,那么可以用首位next[1]的值去取代與它相等的后續(xù)字符的next[j],那么next數(shù)組為{0,0,0,0,0,5};
在求解nextVal數(shù)組的5種情況
三、數(shù)據(jù)結(jié)構(gòu)與算法基礎(chǔ)知識
1.數(shù)據(jù)結(jié)構(gòu)的邏輯結(jié)構(gòu)
(1)集合結(jié)構(gòu)
(2)線性結(jié)構(gòu)(存在唯一的第一個元素與唯一的最后一個元素)(eg: 線性表、隊(duì)列、棧、字符串、數(shù)組、鏈表)
(3)樹形結(jié)構(gòu)(一對多)
(4)圖形結(jié)構(gòu)(多對多)
2.數(shù)據(jù)結(jié)構(gòu)的物理(存儲)結(jié)構(gòu)
(1).順序存儲結(jié)構(gòu)(插入與刪除低效因?yàn)橐矂悠渌氐奈恢?。但是遍歷簡單)
(2).鏈?zhǔn)酱鎯Y(jié)構(gòu)(插入與刪除高效,但是遍歷低效)
3.大O表示法(注意大O表示法表達(dá)的是最壞的情況)
規(guī)則:
(1)用常數(shù)1取代其他所有的常數(shù)(注意常數(shù)0也當(dāng)1算)(3 -> 1, O(1))
(2) 只保留最高階項(xiàng)(n^3+2n^2+5 ->n^3, O(n^3))
(3) 若存在最高階,省略與其想成的常數(shù)(2n^3 -> n^3, O(n^3))
4. 時間復(fù)雜度類型
(1)常數(shù)階
(2)線性階
(3)平方階
(4)對數(shù)階
(5)立方階
(6)nlog階
(7)指數(shù)階(O(2^n)或O(n!), 往往會造成噩夢般的時間消耗)
5. 空間復(fù)雜度(用大O表示法求解改算法的輔助空間即可,例如用于交換變量用的臨時變量的數(shù)量)
六. 順序存儲的線性表
線性表結(jié)構(gòu)特點(diǎn):
(1) 存在唯一一個的被稱作”第一個”的數(shù)據(jù)元素;
(2) 存在唯一一個的被稱作”第二個”的數(shù)據(jù)元素;
(3) 除了第一個元素以外,結(jié)構(gòu)中的每個數(shù)據(jù)元素均有一個前驅(qū);
(4) 除了最后一個元素以外,結(jié)構(gòu)中的每個數(shù)據(jù)元素均有一個后繼。
七. 鏈?zhǔn)酱鎯Φ木€性表(單鏈表)
首元結(jié)點(diǎn)是鏈表中第一個值域不為空的結(jié)點(diǎn)。
頭結(jié)點(diǎn)是一個值域?yàn)榭涨姨幱谑孜坏慕Y(jié)點(diǎn)。
首指針可指向首元結(jié)點(diǎn)也可指向頭結(jié)點(diǎn),但是如果指向頭結(jié)點(diǎn)可以更加方便的處理單鏈表的插入和刪除問題,不用再對首位做額外判斷,并且指向頭節(jié)點(diǎn)的指針永遠(yuǎn)不用變化。
*注意一下單鏈表的前插法和尾插法。尾插法更符合邏輯
四、19年3月二級C--數(shù)據(jù)結(jié)構(gòu)與算法
1.假設(shè)線性表的長度為n,則最壞情況下:
冒泡排序: 需要經(jīng)過n/2遍的從前往后掃描和n/2遍從后往前掃描,需要比較的次數(shù)為n(n-1)/2。總的時間復(fù)雜度為O(n的平方)。
快速排序: 比較次數(shù)也是n(n-1)/2??偟臅r間復(fù)雜度為O(n的平方)。
直接插入排序: 所需要比較的次數(shù)為n(n-1)/2。總的時間復(fù)雜度為O(n的平方)。
希爾排序所需要比較的次數(shù)為O(n的1.5次方)。(時間復(fù)雜度小于以上三種)
堆排序: 最壞情況下,其時間復(fù)雜度為O(nlogn)。(小于O(n的平方))。
2.根據(jù)數(shù)據(jù)結(jié)構(gòu)中各元素之間前后關(guān)系的復(fù)雜程度,一般數(shù)據(jù)結(jié)構(gòu)分為兩大類: 線性結(jié)構(gòu)和非線性結(jié)構(gòu)。
如果一個非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個條件,①有且只有一個根結(jié)點(diǎn) ②每個結(jié)點(diǎn)最多有一個前件,也最多有一個后件。則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu),又稱線性表。
3.算法時間復(fù)雜度與空間復(fù)雜度沒有關(guān)系。
4.所謂算法的時間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。
為了能夠比較客觀的反映出一個算法的效率,在度量一個算法的工作量時,不僅應(yīng)該與所用的計(jì)算機(jī)程序設(shè)計(jì)語言,以及程序編制者無關(guān),而且還應(yīng)該與算法實(shí)現(xiàn)過程中的許多細(xì)節(jié)無關(guān)。
5.同一問題可用不同算法解決,而一個算法的質(zhì)量優(yōu)劣將影響到算法乃至程序的效率。
算法分析的目的在于選擇合適算法和改進(jìn)算法。
6.堆排序在平均情況下的時間復(fù)雜度與最壞情況下的時間復(fù)雜度都是O(nlogn)。
7.二叉鏈表: 以二叉鏈表作為樹的存儲結(jié)構(gòu)。鏈表中結(jié)點(diǎn)的兩個鏈域分別指向該結(jié)點(diǎn)的第一個孩子結(jié)點(diǎn)和第一個孩子下的一個兄弟結(jié)點(diǎn)。
循環(huán)鏈表是鏈?zhǔn)酱鎯Y(jié)構(gòu),循環(huán)隊(duì)列是線性存儲結(jié)構(gòu)。( 【×】循環(huán)鏈表是循環(huán)隊(duì)列的鏈?zhǔn)酱鎯Y(jié)構(gòu))
雙向鏈表也叫雙鏈表,是鏈表的一種,它的每個數(shù)據(jù)結(jié)點(diǎn)都有兩個指針,分別指向直接后繼和直接前驅(qū),所以從雙鏈表中的任意一個結(jié)點(diǎn)開始都可以很方便地訪問它的前驅(qū)結(jié)點(diǎn)和后繼結(jié)點(diǎn)。
8.數(shù)據(jù)的邏輯結(jié)構(gòu)由兩個要素: 一是數(shù)據(jù)元素的集合,通常記為D。二是D上的關(guān)系,它反映了D中各元素之間的前后件關(guān)系,通常記為R。
即一個數(shù)據(jù)結(jié)構(gòu)可以表示成B=(D,R),其中B表示數(shù)據(jù)結(jié)構(gòu),為了反映D中各元素之間的前后件關(guān)系,一般用二元組來表示。例如,假如a與b是D中的兩個數(shù)據(jù),則二元組表示a是b的前件,b是a的后件。
線性結(jié)構(gòu)用圖形表示更加直觀。例如: R={(5,1),(7,9),(1,7),(9,3)},結(jié)構(gòu)為: 5→1→7→9→3
9.快速排序法是一種互換類的排序方法,但由于比冒泡排序的速度快,因此稱為快速排序。
其基本思想是從線性表中選擇一個元素設(shè)為t,將線性表后面小于t的元素移到前面,而前面大于t的元素移到后面,結(jié)果就將線性表分成了兩部分,t插入到分界線的位置處,這個過程稱為線性表的分割。
簡單插入排序法,是指將無序序列中的各元素依次插入到已經(jīng)有序的線性表中。
冒泡排序法是一種最簡單的交換類排序方法,它是通過相鄰數(shù)據(jù)元素的交換,逐步將線性表變?yōu)橛行颉?/p>
后兩種元素的移動過程中不會產(chǎn)生新的逆序。
10.程序可作為算法的一種描述。
11.為了降低算法的空間復(fù)雜度,要求算法盡量采用原地工作,所謂的原地工作是指執(zhí)行算法時所使用的額外空間固定。
一個算法的空間復(fù)雜度一般是指執(zhí)行這個算法所需要的內(nèi)存空間,一個算法所占用的存儲空間包括程序所占的空間,輸入的初始數(shù)據(jù)所占的空間以及算法執(zhí)行過程中所需要的額外空間。
12.能從任意一個結(jié)點(diǎn)開始沒有重復(fù)的掃描到所有結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)是循環(huán)鏈表。
13.循環(huán)隊(duì)列是隊(duì)列的一種存儲結(jié)構(gòu)
14.算法的設(shè)計(jì)要求包括效率與低存儲量,即要考慮算法的時間復(fù)雜度與空間復(fù)雜度。
算法的復(fù)雜度包括時間復(fù)雜度和空間復(fù)雜度。
時間復(fù)雜度: 是指執(zhí)行算法所需要的計(jì)算工作量。
空間復(fù)雜度: 一般是指執(zhí)行這個算法所需要的內(nèi)存空間。
15.棧是一種特殊的線性表。鏈?zhǔn)浇Y(jié)構(gòu)把每一個存儲結(jié)點(diǎn)分為數(shù)據(jù)域與指針域,帶鏈的棧可以通過指針域的變化改變原有的棧的組織數(shù)據(jù)原則; 而順序棧的棧底指針不變,棧頂指針改變。
16.堆排序在最壞的情況下需要比較nlogn次。
快速排序,在最壞情況下需要比較n(n-1)/2次。
順序查找,在最壞情況下需要比較n次。
最壞情況下,二分查找需要log2n(小于n-1)
在長度為n的順序表中尋找最大項(xiàng)/最小項(xiàng)時,比較次數(shù)最少為1,最多為n-1。
17.如果一個非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個條件,①有且只有一個根節(jié)點(diǎn) ②每一個結(jié)點(diǎn)最多有一個前件,也最多有一個后件,則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu)。如果一個數(shù)據(jù)結(jié)構(gòu)不是線性結(jié)構(gòu),則稱為非線性結(jié)構(gòu)。
18.帶鏈??盏臈l件是 top=bottom=NULL
19.滿二叉樹也是完全二叉樹,完全二叉樹不一定是滿二叉樹。對于滿二叉樹和完全二叉樹來說,可以按照程序進(jìn)行順序存儲,不僅節(jié)省了空間,又能方便地確定每一個結(jié)點(diǎn)的父結(jié)點(diǎn)等于左右子結(jié)點(diǎn)的位置,但順序存儲結(jié)構(gòu)對于一般的二叉樹不適用。
20.帶鏈棧隊(duì)頭指針與隊(duì)尾指針相同,且不為空時,隊(duì)列元素個數(shù)為1; 若為空時,隊(duì)列元素個數(shù)為0。
帶鏈棧的棧底指針是隨棧的操作而動態(tài)變化的。
21.二叉樹的鏈?zhǔn)酱鎯Y(jié)構(gòu),也稱為二叉鏈表。在二叉樹中,由于每一個元素可以有兩個后件,因此用于存儲二叉樹的存儲結(jié)點(diǎn)的指針域有兩個,所以二叉鏈表屬于非線性結(jié)構(gòu)。
22.線性表由一組元素?cái)?shù)據(jù)元素構(gòu)成,各元素的數(shù)據(jù)類型必須相同,矩陣是一個比較復(fù)雜的線性表,線性表除了插入和刪除運(yùn)算之外,還可以查找,排序,分解,合并等。數(shù)組是長度固定的線性表。
23.冒泡排序中,在互換兩個相鄰元素時,只能消除一個逆序; 快速排序及希爾排序中,一次交換可以消除多個逆序。
24.二分法檢索的效率比較高,設(shè)線性表有n個元素,則最多的比較次數(shù)為log2n,最少檢索次數(shù)為1。
25.循環(huán)鏈表的結(jié)構(gòu)具有以下兩個特點(diǎn)。一,在循環(huán)鏈表中,增加了一個表頭結(jié)點(diǎn),其數(shù)據(jù)域?yàn)槿我饣蛘吒鶕?jù)需要來設(shè)置指針域指向線性表的第一個元素的結(jié)點(diǎn)。循環(huán)鏈表的頭指針指向表頭結(jié)點(diǎn)。二、循環(huán)鏈表中最后一個節(jié)點(diǎn)的指針域不是空,而是指向表頭結(jié)點(diǎn),即在循環(huán)鏈表中所有的結(jié)點(diǎn)指針構(gòu)成一個環(huán)狀鏈。
26.二叉樹的存儲結(jié)構(gòu)是非線性結(jié)構(gòu),而完全二叉樹是特殊形態(tài)的二叉樹。采用順序存儲的完全二叉樹屬于非線性結(jié)構(gòu)。
27.時間復(fù)雜度和計(jì)算機(jī)運(yùn)行速度以及存儲空間無關(guān)。
算法的空間復(fù)雜度和存儲結(jié)構(gòu)無關(guān)。
數(shù)據(jù)處理效率與數(shù)據(jù)的存儲結(jié)構(gòu)有關(guān)。
28.線性表,向量,棧,隊(duì)列都屬于線性結(jié)構(gòu)的順序存儲。
29.循環(huán)隊(duì)列是隊(duì)列的存儲結(jié)構(gòu)。
循環(huán)鏈表是另一種形式的念式存儲結(jié)構(gòu)。
(✘循環(huán)鏈表是循環(huán)隊(duì)列的鏈?zhǔn)酱鎯Y(jié)構(gòu)。✘)
30.完全二叉樹的總結(jié)點(diǎn)為奇數(shù)時,葉子結(jié)點(diǎn)是總結(jié)點(diǎn)加一再除以二。
31.在實(shí)際處理中,可以用一位數(shù)組來存儲堆序列中的元素,也可以用完全二叉樹來直觀的表示堆的結(jié)構(gòu)。在用完全二叉樹表示堆時,樹中所有非葉子結(jié)點(diǎn)值均不小于其左,右子樹的根結(jié)點(diǎn)值,因?yàn)槎秧斣乇仨殲樾蛄械膎個元素的最大項(xiàng),因此其中序并不是有序序列。
多重鏈表指表中每個結(jié)點(diǎn)由兩個或兩個以上的指針域的鏈表。如果一個非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個條件,①有且只有一個根結(jié)點(diǎn),②每個結(jié)點(diǎn)最多有一個前件,也最多有一個后件,則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu),所以多重鏈表不一定是非線性結(jié)構(gòu)。
在計(jì)算機(jī)中二叉樹通常采用鏈?zhǔn)酱鎯Y(jié)構(gòu),對于滿二叉樹和完全二叉樹來說,可以按層次進(jìn)行順序存儲。
排序二叉樹的中序遍歷序列是有序序列。
32.對于一個固定的規(guī)模,算法所執(zhí)行的基本運(yùn)算次數(shù)還可能與特定的輸入有關(guān)。
33.在線性表中尋找最大項(xiàng)時,平均情況下和最壞情況下比較次數(shù)都是n-1。
34.在長度為n的順序表中查找一 個元素, 假沒需要查找的元素有一半的機(jī)會在表中,并且如果元素在表中,則出現(xiàn)在表中每個位置上的可能性是相
同的。則在平均情況下需要比較的次數(shù)大約為_
A.3n/4 B.n C.n/2 D.n/4
本題的考查知識點(diǎn)是順序表的存儲結(jié)構(gòu)。
因?yàn)樾枰檎业脑赜幸话霗C(jī)會在表中,所以二分之一的情況下平均比較次數(shù)為n/2,另二分之一的情況下平均比較次數(shù)為n。總的平均比較次數(shù)為(n/2+n) /2-3n/4。
故本題答案為A。
35.設(shè)數(shù)據(jù)結(jié)構(gòu)B=(D, R),其中
D={a,b,c,d,e,f}
R={(a,b),(b,c),(c,d),(d,e),(e,f),(f,a)}該數(shù)據(jù)結(jié)構(gòu)為
A.線性結(jié)構(gòu) B.循環(huán)隊(duì)列
C.循環(huán)鏈表 D.非線性結(jié)構(gòu)
本題的考查知識點(diǎn)是數(shù)據(jù)結(jié)構(gòu)。
如果一個非控的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個條件: 1) 有且只有一個根節(jié)點(diǎn); 2) 每一一個結(jié)點(diǎn)最多有一一個前件,也最多有一一個后件。則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu)。如果一個數(shù)據(jù)結(jié)構(gòu)不是線性結(jié)構(gòu),則稱之為非線性結(jié)構(gòu)。
數(shù)據(jù)結(jié)構(gòu)B=(D, R)中, 每一個結(jié)點(diǎn)均有一個前件,不符合“有且只有一個根節(jié)點(diǎn)”的條件,所以為非線性結(jié)構(gòu)。故本題答案選D。
36.某帶鏈的隊(duì)列初始狀態(tài)為front=rear=NULL。經(jīng)過一系列正常的入隊(duì)與退隊(duì)操作后,front=rear=10。 該隊(duì)列中的元素個數(shù)為_
A.1 B.0 C.1或0 D.不確定
本題的考查知識點(diǎn)是帶鏈隊(duì)列。
在初始狀態(tài)為front=rear=NULL的帶鏈隊(duì)列入隊(duì)時,如果插入的結(jié)點(diǎn)既是隊(duì)首結(jié)點(diǎn)又是隊(duì)尾結(jié)點(diǎn),則rear和front同時指向這個結(jié)點(diǎn);否則在循環(huán)隊(duì)列的隊(duì)尾加入一一個新元素,rear指向新增結(jié)點(diǎn)的數(shù)據(jù)域,rear+1, front不變。 退隊(duì)時,在循環(huán)隊(duì)列的排頭位置退出一個元素并賦給指定的變量,front指向第二個結(jié)點(diǎn)的數(shù)據(jù)域,front+1, rear不變。當(dāng)front=rear=10時, front和rear同時指向這個唯一 元素,所以該隊(duì)列中的元素個數(shù)為1。
故本題答案為A。
37.若二叉樹沒有葉子結(jié)點(diǎn),則為空二叉樹。
38.某帶鏈棧的初始狀態(tài)為top=bottom=NULL, 經(jīng)過一系列正 常的入棧與退棧操作后,top=10, bottom=20。 該棧中的元素個數(shù)為_____。
A.不確定 B. 10 C.1 D.0
本題考查的知識點(diǎn)是棧。
帶鏈的棧是具有棧屬性的鏈表,線性鏈表的存儲單元是不連續(xù)的,為把存儲空間中一-些離散的空閑存 儲結(jié)點(diǎn)利用起來,把所有空閑的結(jié)點(diǎn)組織成一個帶鏈的棧,稱為可利用棧。
線性鏈表執(zhí)行刪除操作運(yùn)算時, 被刪除的結(jié)點(diǎn)可以”回收到可利用棧,對應(yīng)于可利用棧的入棧運(yùn)算;線性鏈表執(zhí)行插入運(yùn)算時,需要一個新的結(jié)點(diǎn),可以在可利用棧中取棧頂結(jié)點(diǎn),對應(yīng)于可利用棧的退棧運(yùn)算。
可利用棧的入棧運(yùn)算和退棧運(yùn)算只需要改動top指針即可。因?yàn)槭遣贿B續(xù)的存儲空間,所以top指針將不會有規(guī)律地連續(xù)變化,因此無法據(jù)此判斷棧中的元素個數(shù)。
所以本題答案為A。
以上就是關(guān)于與算法相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
伊賀忍者餐飲品牌設(shè)計(jì)圖(伊賀忍者餐飲品牌設(shè)計(jì)圖片)