順序表湘换、線性表

1.線性表?

概念:

一個(gè)線性表是n個(gè)具有相同特性的數(shù)據(jù)元素的有限序列,線性表中數(shù)據(jù)元素之間的關(guān)系是一對(duì)一的關(guān)系贴浙。

特點(diǎn):

①有且只有一個(gè)元素沒有前驅(qū)元素---首元素/頭元素

②有且只有一個(gè)元素沒有后繼元素--尾元素

線性表存儲(chǔ):

連續(xù)式存儲(chǔ):用連續(xù)的存儲(chǔ)單元存儲(chǔ)順序表(數(shù)組形式)

不連續(xù)性:用不連續(xù)的存儲(chǔ)單元存儲(chǔ)不連續(xù)的鏈表(鏈?zhǔn)酱鎯?chǔ))

2.順序表

概念:

用連續(xù)的存儲(chǔ)單元存儲(chǔ)一個(gè)線性表

特點(diǎn):

①連續(xù)的存儲(chǔ)單元---采用數(shù)組形式

②不改變線性表數(shù)據(jù)元素的邏輯次序

優(yōu)點(diǎn):

①不改變邏輯存儲(chǔ)順序

②地址連續(xù)(連續(xù)存儲(chǔ))崎溃,可以通過計(jì)算得到任意地址袁串,訪存速度快,可以實(shí)現(xiàn)隨機(jī)訪問

③要素:首元素地址赎瑰、單元偏移(下標(biāo))

缺點(diǎn):

①要占據(jù)大塊的連續(xù)空間

②插入刪除不方便

3.分配數(shù)組

形式:

定義數(shù)組:數(shù)據(jù)類型 數(shù)組名[元素個(gè)數(shù)]

(從高址向低址找破镰,以每個(gè)數(shù)據(jù)類型占據(jù)的字節(jié)數(shù)為一個(gè)偏移單位計(jì)算鲜漩,元素個(gè)數(shù)只能是常量)

int和float均為4字節(jié)數(shù)據(jù)類型

②動(dòng)態(tài)分配地址

malloc(元素個(gè)數(shù)*sizeof(數(shù)據(jù)類型));

返回的地址類型不對(duì)是void型的,應(yīng)該進(jìn)行強(qiáng)制類型轉(zhuǎn)換

int*p;p = (數(shù)據(jù)類型*)malloc(元素個(gè)數(shù)*sizeof(數(shù)據(jù)類型));

注意:指針a指向數(shù)組首元素不動(dòng)

??sizeof里面的數(shù)據(jù)類型是單元類型,強(qiáng)制類型轉(zhuǎn)換的數(shù)據(jù)類型后面加了*是單元的地址類型

練習(xí):定義一塊有8個(gè)元素的整形數(shù)組踩娘,并輸入數(shù)據(jù)喉祭,通過函數(shù)AvgArray(int *a)返回?cái)?shù)組的平均值

(定義數(shù)組可以初始化給值,malloc動(dòng)態(tài)分配內(nèi)存的數(shù)組只能scanf手動(dòng)輸入)

#include<stdio.h> #include<stdlib.h> int main(){ int *a;//定義指針 //分配動(dòng)態(tài)數(shù)組 a = (int *)malloc(8*sizeof(int)); int i; for(i=0;i<8;++i){ scanf("%d",a+i); } double AvgArray(int *a,int n){ double result=0.0; for(i=0;i<n;i++){ result += a[i]; } return result/n; } printf("%f\n",AvgArray(a,8)); }


實(shí)現(xiàn):

1.順序表的查找(順序查找)

:設(shè)有順序表Data(無序习寸、無重復(fù)值)傻工,給定關(guān)鍵字key中捆,在順序表中查找關(guān)鍵字key的數(shù)據(jù)元素,若找到返回下標(biāo)殴蓬,未找到則返回-1

#include<stdio.h>#include<stdlib.h> intFindElem(int*a,intn,intkey){// int i,n=-1;// for(i=0;i<n;i++){// if(a[i] == key){// n = i;// break;// }// }// return n;// int i;// for(i=0;i<n;){// if(a[i]==key) break;// else i++;// }// if(i<n) return i;// else return -1;// int i;// for(i=0;i<n;i++){// if(a[i]==key) break;// }// if(i<n) return i;// else return -1;// int i;// for(i=0;i<n;i++){// if(a[i]==key) break;// }// return i<n?i:-1;inti;for(i=0;i-1)printf("Yes!\n");elseprintf("No!\n");printf("%d\n",R);return0;}

2.順序表的刪除

:將順序表中給定的關(guān)鍵字key的對(duì)應(yīng)的數(shù)據(jù)元素從順序表中刪除

#include<stdio.h>#include<stdlib.h>int DelKeyElem(int a[],int n,int key){int i,j;for(i=0;i<n&&a[i]!=key;++i);if(i<n){for(j=i;j<n-1;++j){ a[j]=a[j+1]; } n--; } return n; } int main(void){ int Data[8]={2,5,7,8,4,9,10}; int key,n,i; printf("請輸入一個(gè)數(shù)字key:"); scanf("%d",&key); int DelKeyElem(int *a,int n,int key); n = DelKeyElem(Data,7,key); for(i=0;i<n;i++){ printf("%3d",Data[i]); } //free*Data; return 0; }

C語言種輸出形式

%c:單個(gè)字符

%x:十六進(jìn)制整數(shù)

%d:十進(jìn)制整數(shù)

%f :十進(jìn)制浮點(diǎn)數(shù)

%o:八進(jìn)制數(shù)

%s :字符串

%u:無符號(hào)十進(jìn)制數(shù)

%%:輸出百分號(hào)%

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市肖粮,隨后出現(xiàn)的幾起案子尔苦,更是在濱河造成了極大的恐慌,老刑警劉巖魂那,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涯雅,死亡現(xiàn)場離奇詭異展运,居然都是意外死亡乐疆,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門琴庵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人儿礼,你說我怎么就攤上這事庆寺。” “怎么了知纷?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵琅轧,是天一觀的道長踊挠。 經(jīng)常有香客問我,道長睹酌,這世上最難降的妖魔是什么剩檀? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任谨朝,我火速辦了婚禮甥绿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘洗出。我一直安慰自己图谷,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布菠镇。 她就那樣靜靜地躺著利耍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪程癌。 梳的紋絲不亂的頭發(fā)上轴猎,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音锐峭,去河邊找鬼郎仆。 笑死,一個(gè)胖子當(dāng)著我的面吹牛抛寝,可吹牛的內(nèi)容都是我干的曙旭。 我是一名探鬼主播桂躏,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼剂习,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了鳞绕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎冤竹,沒想到半個(gè)月后鹦蠕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡萧恕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年廊鸥,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片磨德。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡典挑,死狀恐怖啦吧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情琳水,我是刑警寧澤般堆,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布淮摔,位于F島的核電站,受9級(jí)特大地震影響和橙,放射性物質(zhì)發(fā)生泄漏魔招。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一厕隧、第九天 我趴在偏房一處隱蔽的房頂上張望俄周。 院中可真熱鬧髓迎,春花似錦、人聲如沸波势。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凛忿。三九已至,卻和暖如春叁熔,著一層夾襖步出監(jiān)牢的瞬間床牧,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國打工心软, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留著蛙,地道東北人糯累。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像册踩,于是被迫代替她去往敵國和親泳姐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 2016年12月4日暂吉,一個(gè)特別的日子胖秒,我在跑友的陪伴下完成了人生的首個(gè)半馬,挑戰(zhàn)了自我慕的,享受了運(yùn)動(dòng)的快樂阎肝。 回到家...
    Peter_Ho閱讀 615評(píng)論 0 0
  • 生命里每一個(gè)錯(cuò)過和遺憾风题,都有它的道理嫉父。 面對(duì)愛而不得沛硅,《一代宗師》里宮二說: “人生如棋,落子無悔绕辖。人生若無悔摇肌,那...
    比翼齊飛閱讀 491評(píng)論 0 0
  • 我們都知道動(dòng)物的進(jìn)化,即環(huán)境變化——基因隨機(jī)突變——成功的突變留下仪际,不成功的死掉围小。其實(shí)人類社會(huì)的發(fā)展也不過如此昵骤,比...
    水井先生閱讀 341評(píng)論 0 0
  • 向陽小學(xué) 蔣雪霞 今天在五年級(jí)聽了秦老師的《復(fù)習(xí)閱讀短文》,聽后感觸頗深肯适。秦老師真是一位善于思考变秦、善...
    jxx0209閱讀 171評(píng)論 0 0
  • 中國人在日本花錢雨饺,越來越方便了钳垮。支付寶居功至偉。 2017年额港,中國大陸赴日游客人均消費(fèi)23萬日元饺窿,位列第一,消費(fèi)總...
    29c1663405bc閱讀 466評(píng)論 0 0