數據結構課上筆記7

介紹棧和隊列基本概念和用法。

?

設輸入序列1、2、3、4,則下述序列中( )不可能是出棧序列。【中科院中國科技大學2005】

A. 1、2、3、4 ? ? ? ? ? ? ? ? ? ? ?B. 4、 3、2、1

C. 1、3、4、2 ? ? ? ? ? ? ? ? ? ? ?D.4、1、2、3

選D

我是一個個模擬來做的。

?

描述棧的基本型性質:

1、集合性:棧是由若干個元素集合而成,沒有元素(空集)成為空棧。

2、線性:除棧頂和棧底之外,任意元素均有唯一前趨和后繼。

3、運算受限:只在一端插入刪除的線性表即為棧

?

順序存儲和順序存取:順序存取是只能逐個存或取結構中的元素,例如棧。順序存儲是利用一個連續的空間相繼存放,例如棧可基于一維數組存放元素。

?

一個較早入棧的元素能否在后面元素之前出棧?如果后面元素壓在它上面,就不可以了。如果后面元素未壓入,它可以彈出。在其他元素前面。

?

?

棧與遞歸:

? 當在一個函數的運行期間調用另一個函數時,在運行 該被調用函數之前,需先完成三件事: ?將實參等傳遞給被調用函數,保存返回地址(入棧); ?為被調用函數的局部變量分配存儲區; ? ?將控制轉移到被調用函數的入口。 ?

從被調用函數返回調用函數之前,應該完成: ?保存被調函數的計算結果; ?釋放被調函數的數據區; ?按被調函數保存的返回地址(出棧)將控制轉移到調 ? ? ? ?用函數。

多個函數嵌套調用的規則是:后調用先返回。

?此時的內存管理實行“棧式管理”

?

隊列:

? ? ? ? 在多用戶計算機系統中,各個用戶需要使用 CPU 運行自己的程序,它們分別向操作系統提出使用 CPU 的請求,操作系統按照每個請求在時間上的先后順序, 將其排成一個隊列,每次把CPU分配給隊頭用戶使用, 當相應的程序運行結束,則令其出隊,再把CPU分配 給新的隊頭用戶,直到所有用戶任務處理完畢。

?

以主機和打印機為例來說明,主機輸出數據給打印 機打印,主機輸出數據的速度比打印機打印的速度要快 得多,若直接把輸出的數據送給打印機打印,由于速度 不匹配,顯然不行。解決的方法是設置一個打印數據緩 沖區,主機把要打印的數據依此寫到這個緩沖區中,寫 滿后就暫停輸出,繼而去做其它的事情,打印機就從緩 沖區中按照先進先出的原則依次取出數據并打印,打印 完后再向主機發出請求,主機接到請求后再向緩沖區寫 入打印數據,這樣利用隊列既保證了打印數據的正確, 又使主機提高了效率。

?

雙端隊列:

某隊列允許在其兩端進行入隊操作,但僅允許在一端進行出隊操作,若元素a,b,c,d,e依次入隊列后,再進行出隊操作,則不可能得到的順序是( )。?

A. bacde ? ? ? ? ? ? ? ?B. dbace ? ? ? ? ? ? ?C. dbcae ? ? ? ? ? ? ? ?D. ecbad

解析:出隊只能一端,所以abcde一定是這個順序。

反模擬入隊,每次只能在兩邊出元素。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/445524.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/445524.shtml
英文地址,請注明出處:http://en.pswp.cn/news/445524.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ROC曲線與AUC值

ROC曲線與AUC值 1.概述AUC(Area Under roc Curve)是一種用來度量分類模型好壞的一個標準。這樣的標準其實有很多,例如:大約10年前在machine learning文獻中一統天下的標準:分類精度;在信息檢索(IR)領域中常…

設置SSH免密碼自動登錄(使用別名)

每次登錄服務器都要寫一大串的用戶名(username服務器地址)和登錄密碼十分的繁瑣,所以本文就告訴大家如何通過修改配置文件,達到只需要輸入:ssh jack(你起的別名)就可以一鍵登錄到服務器中。 1.創建公鑰(相當…

串的定長表示

思想和代碼都不難&#xff0c;和線性表也差不多&#xff0c;串本來就是數據受限的線性表。 串連接&#xff1a; #include <stdio.h> #include <string.h> //串的定長順序存儲表示 #define MAXSTRLEN 255 //用戶可在255以內定義最大串長 typedef unsigned cha…

周志華《Machine Learning》 學習筆記系列(1)--緒論

機器學習致力于研究如何通過計算手段&#xff0c;利用經驗來改善系統本身的性能&#xff0c;在計算機系統中&#xff0c;“經驗”通常是以“數據”形式存在的&#xff0c;所以&#xff0c;機器學習的主要內容是關于在計算機上從數據中產生“模型”的算法&#xff0c;即學習算法…

輕松理解牛頓迭代法且用其求平方根

牛頓迭代法概述 牛頓迭代法&#xff08;Newton’s method&#xff09;又稱為牛頓-拉弗森方法&#xff08;Newton-Raphson method&#xff09;&#xff0c;它是牛頓在17世紀提出的一種在實數域和復數域上近似求解方程的方法。 牛頓迭代公式 設rrr是f(x)0f(x)0f(x)0的根&#…

map+DP leetcode446

如果數字序列由至少三個元素組成并且任何兩個連續元素之間的差異相同&#xff0c;則稱為算術序列。 例如&#xff0c;這些是算術序列&#xff1a; 1&#xff0c;3&#xff0c;5&#xff0c;7&#xff0c;9 7&#xff0c;7,7&#xff0c;7 3&#xff0c;-1&#xff0c;-5&am…

如何使用cookie信息,完成自動登錄

在做爬蟲任務的時候&#xff0c;我們常常會遇到很多網頁必須登錄后&#xff0c;才可以開放某些頁面。所以登錄是爬取網頁的第一步。但是&#xff0c;通過post表單&#xff08;包含用戶名和密碼&#xff09;的方法&#xff0c;對于那些不需要輸入比較復雜的驗證碼的網頁&#xf…

Spring Cloud 學習筆記(1 / 3)

Spring Cloud 學習筆記&#xff08;2 / 3&#xff09; Spring Cloud 學習筆記&#xff08;3 / 3&#xff09; ---01_前言閑聊和課程說明02_零基礎微服務架構理論入門03_第二季Boot和Cloud版本選型04_Cloud組件停更說明05_父工程Project空間新建06_父工程pom文件07_復習Depend…

后綴樹/后綴數組

字典樹&#xff1a;https://blog.csdn.net/hebtu666/article/details/83141560 后綴樹&#xff1a;后綴樹&#xff0c;就是把一串字符的所有后綴保存并且壓縮的字典樹。 相對于字典樹來說&#xff0c;后綴樹并不是針對大量字符串的&#xff0c;而是針對一個或幾個字符串來解決…

kaggle(02)-房價預測案例(基礎版)

房價預測案例 Step 1: 檢視源數據集 import numpy as np import pandas as pd讀入數據 一般來說源數據的index那一欄沒什么用&#xff0c;我們可以用來作為我們pandas dataframe的index。這樣之后要是檢索起來也省事兒。 有人的地方就有鄙視鏈。跟知乎一樣。Kaggle的也是個處…

為什么Python中整型不會溢出

前言 本次分析基于 CPython 解釋器&#xff0c;python3.x版本 在python2時代&#xff0c;整型有 int 類型和 long 長整型&#xff0c;長整型不存在溢出問題&#xff0c;即可以存放任意大小的整數。在python3后&#xff0c;統一使用了長整型。這也是吸引科研人員的一部分了&am…

如何使用github中的pull request功能?

* pull request是社會化編程的象征&#xff0c;通過這個功能&#xff0c;你可以參與到別人開發的項目中&#xff0c;并做出自己的貢獻。pull request是自己修改源代碼后&#xff0c;請求對方倉庫采納的一種行為*–《github入門與實踐》 下面具體說一下github中使用pull reque…

「假裝努力」

有多少人在「假裝努力」&#xff1f; 又有多少人在「真正成長」&#xff1f; 再努力努力 回想起當年畢業后&#xff0c;在北京和室友合租的日子。 那時&#xff0c;我在工作&#xff0c;室友在培訓。 一天&#xff0c;我下班回來&#xff0c;聽見他在電話里和家人爭吵&…

如何閱讀論文?

本文主要講述了如何才能高效的閱讀一篇論文&#xff01;&#xff01;

貪吃蛇js

python都學不懂&#xff0c;c又不會&#xff0c;只能寫寫js來維持生活了。555555 js&#xff1a; window.onload function() {var wrap document.getElementsByClassName("wrap")[0];var uls document.getElementsByClassName("sbody")[0];var hand …

Android studio安裝過程中入的坑的記錄與記錄

Android studio安裝過程中入的坑的記錄與記錄 * 由于最近項目的需求&#xff0c;所以最近一直在配置安卓的開發環境&#xff0c;之前用的是Eclipse ADT的模式開發的&#xff0c;配置環境也花了一些時間&#xff0c;但是由于谷歌大力扶持它的親兒子Android Studio&#xff0c;…

動態規劃基礎水題提綱

提綱 漢諾塔 漢諾塔&#xff1a;漢諾塔&#xff08;又稱河內塔&#xff09;問題是源于印度一個古老傳說的益智玩具。大梵天創造世界的時候做了三根金剛石柱子&#xff0c;在一根柱子上從下往上按照大小順序摞著64片黃金圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新…

數據結構課上筆記8

串的概念&#xff1a;串&#xff08;字符串&#xff09;&#xff1a;是由 0 個或多個字符組成的有限序列。 通常記為&#xff1a;s ‘ a1 a2 a3 … ai …an ’ ( n≥0 )。 串的邏輯結構和線性表極為相似。 一些串的類型&#xff1a; 空串&#xff1a;不含任何字符的串&#x…

數據結構課上筆記9

數組&#xff1a;按一定格式排列起來的具有相同類型的數據元素的集合。 二維數組&#xff1a;若一維數組中的數據元素又是一維數組結構&#xff0c;則稱為二維數組。 同理&#xff0c;推廣到多維數組。若 n -1 維數組中的元素又是一個一維數組結構&#xff0c;則稱作 n 維數組…

pySerial -- Python的串口通訊模塊

pySerial Overview This module encapsulates the access for the serial port. It provides backends for Python running on Windows, Linux, BSD (possibly any POSIX compliant system), Jython and IronPython (.NET and Mono). The module named “serial” automatica…