數組存儲結構
A. 一維數組在內存中的存放方式是怎麼樣的
一維數組在內存中的存放方式是:
1、硬碟上不可能運行程序的,必須在內存中運行。
2、低地址到高地址存儲 。
3、數組元素通常也稱為下標變數。
4、在c語言中,只能逐個地使用下標變數, 不能用一個語句輸出整個數組。
5、int a[10]和t=a[6]分別是定義數組長度為10和引用a數組中序號為6的元素,6不代表數組長度。
(1)數組存儲結構擴展閱讀:
數組(Array)是有序的元素序列。若將有限個類型相同的變數的集合命名,那麼這個名稱為數組名。組成數組的各個變數稱為數組的分量,也稱為數組的元素,有時也稱為下標變數。用於區分數組的各個元素的數字編號稱為下標。數組是在程序設計中,為了處理方便, 把具有相同類型的若干元素按有序的形式組織起來的一種形式。 這些有序排列的同類數據元素的集合稱為數組。
數組是用於儲存多個相同類型數據的集合。
在C語言中, 數組屬於構造數據類型。一個數組可以分解為多個數組元素,這些數組元素可以是基本數據類型或是構造類型。因此按數組元素的類型不同,數組又可分為數值數組、字元數組、指針數組、結構數組等各種類別。
B. 一個簡單的問題,數組是邏輯結構還是存儲結構
存儲結構是邏輯結構的存儲映像,邏輯結構指的是數據間的關系,它又分為線性結構和非線性結構,這兩者並不沖突。一個指的是數據之間的關系,而另一個指這種關系在計算機中的表現形式。兩者的區別就在於給他們定義的特殊操作,它們都有」出「和」入「兩種操作,一個是「先進先出」,而一個是「後進先出」。
一種邏輯結構在計算機里可以用不同的存儲結構實現。比如邏輯結構中簡單的線性結構,可以用數組(順序存儲)或單向鏈表(鏈接存儲)來實現。邏輯結構:指各數據元素之間的邏輯關系。存儲結構:就是數據的邏輯結構用計算機語言的實現。
C. c語言中,一位數組的邏輯結構是(),存儲結構式();對二維數組或多維數組分哪兩種存儲方式
對二維數組或多維數組分行優先和列優先兩種存儲方式
一位數組的邏輯結構是順序存儲結構
D. 什麼是數組數組元素與存儲單元的對應關系是怎樣的
數組就是存儲一堆數據的存儲結構。(可是是整數,可以是字母,甚至,多元數組還可以存儲字元串)
數組里的元素是連續的。所以相鄰的存儲單元的存儲地址是連著的。
這也是後面為什麼指針可以來代替數組處理問題的原因。
比如a[0]和a[1]的存儲單元地址是連續的
E. 為什麼說數組是一種隨機存儲結構
數組的存儲是連續的,但是訪問是隨機的。因為可以用下標進行數組的隨機訪問。相反,鏈表可以實現隨機存儲,但是其訪問卻必須是連續的。
F. 數組是按照什麼數據結構存儲的
順序存儲結構,因為數組在空間上是連續的
G. 數組的存儲結構採用什麼存儲方式
數組在內存中是採用一段連續的地址進行順序存儲的!
祝你學習愉快!
詳細請參考
http://www2.gliet.e.cn/jpkc/datastructure/course/course_content.asp?chapter_id=4§ion_id=17
H. 數據的存儲結構包括________。
數據的存儲結構包括順序存儲和鏈式存儲結構。
順序存儲結構是把邏輯上相鄰的節點存儲在物理位置上相鄰的存儲單元中,結點之間的邏輯關系由存儲單元的鄰接關系來體現。通常順序存儲結構是藉助於計算機程序設計語言數組來描述的。主要優點是節省存儲空間,可實現對節點的隨機存取,即每一個節點對應一個序號。
鏈式存儲結構在計算機中用一組任意的存儲單元存儲線性表的數據元素。鏈式存儲結構通常藉助於程序設計語言中的指針類型來實現。它不要求邏輯上相鄰的元素在物理位置上相鄰;每個節點是由數據域和指針域組成;由於簇是隨機分配的,這也使數據刪除後覆蓋幾率降低,恢復可能提高。
(8)數組存儲結構擴展閱讀:
順序存儲結構的基本原理
在順序存儲中,每個存儲空間含有所存元素本身的信息,元素之間的邏輯關系是通過數組下標位置簡單計算出來的線性表的順序存儲,若一個元素存儲在對應數組中的下標位置為i,則它的前驅元素在對應數組中的下標位置為i-1,它的後繼元素在對應數組中的下標位置為i+1。
在鏈式存儲結構中,存儲結點不僅含有所存元素本身的信息,而且含有元素之間邏輯關系的信息。
I. 數據結構、數組存儲的地址怎麼計算
數組存儲地址的計算:
以二維數組為例,其他的依次類推
假設起始下標從0開始,按行存儲(總共有M行,N列):
A[i][j]=A[0][0]+(i*N+j)*L
這地方的L是數組中的一個元素所佔的存儲空間。
或:
即使A[8][5]前面有多少個元素,
行下標i從1到8,列下標j從1到10,所有A[8][5]之前共有n7*10+4(74)個元素,
每個元素的長度為3個位元組,故共有3*74=222個位元組
首地址是SA,則A[8][5]地址是SA+222
(9)數組存儲結構擴展閱讀:
在數據的順序存儲中,由於每個元素的存儲位置都可以通過簡單計算得到,所以訪問元素的時間都相同;而在數據的鏈接存儲中,由於每個元素的存儲位置保存在它的前驅或後繼結點中,所以只有當訪問到其前驅結點或後繼結點後才能夠按指針訪問到,訪問任一元素的時間與該元素結點在鏈式存儲結構中的位置有關。
J. 程序設計語言中的數組一般是順序存儲結構,因此,利用數組只能處理線性結構
不對,數組本身的存儲結構是線性的,就是說它是連續存儲的,但是數組中元素可以存儲指針,就是指針型數組,它就可以利用數組處理非線性的數據。比如將一個鏈表每個結點的地址存入數組,那樣訪問數組,就是處理非線性的數據了