欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

順序表的插入操作-創(chuàng)新互聯(lián)

目錄

創(chuàng)新互聯(lián)于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站制作、網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元陜州做網(wǎng)站,已為上家服務(wù),為陜州各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220

什么是順序表,它的定義和特點有哪些。

如何實現(xiàn)順序表的插入操作。

定義一個順序表

定義insert函數(shù)

???? 判斷順序表是否已滿

?????插入位置的有效性

?????開始插入操作

主函數(shù)實現(xiàn)功能舉例:

?????為SequenceList L賦值

?????打印順序表

?????調(diào)用insert函數(shù)傳參實現(xiàn)插入操作

?????打印插入后的順序表

完整代碼如下:

補充注意事項

錯誤寫法:



什么是順序表,它的定義和特點有哪些。

順序表是一種線性數(shù)據(jù)結(jié)構(gòu),它由一組有序的數(shù)據(jù)元素組成。順序表中的數(shù)據(jù)元素是按照一定順序存儲的,并且可以通過數(shù)據(jù)元素的位置來訪問它們。

順序表有以下幾個特點:

  1. 順序表的查找效率高,可以通過數(shù)組下標(biāo)直接訪問順序表中的任意一個數(shù)據(jù)元素。

  2. 順序表的插入和刪除效率較低,因為這些操作需要移動大量的數(shù)據(jù)元素。

  3. 順序表的空間利用率較低,因為順序表的大小是固定的,如果空間不夠用,就需要重新分配一塊新的內(nèi)存空間,將數(shù)據(jù)復(fù)制過去,這樣就會浪費一些空間。

  4. 順序表的內(nèi)存空間是連續(xù)的,這樣可以提高緩存命中率,從而提高訪問效率。

總之,順序表是一種簡單且常用的線性數(shù)據(jù)結(jié)構(gòu),它的查找效率高,但是插入和刪除效率較低,空間利用率較低。

如何實現(xiàn)順序表的插入操作。 ????????定義一個順序表
typedef struct {
    int data[MAX_SIZE];
    int length;
}SequenceList;

上述代碼中的typedef聲明了一個類型別名SequenceList,用來表示一個結(jié)構(gòu)體類型。這個結(jié)構(gòu)體類型包含兩個成員:一個整型數(shù)組data和一個整型變量length。

這樣使用typedef聲明后,就可以像使用系統(tǒng)定義的類型一樣使用SequenceList類型,而不用再使用struct關(guān)鍵字。例如,可以直接聲明一個SequenceList類型的變量,使用typedef聲明類型別名的主要目的是為了使代碼更加簡潔,方便維護(hù)。

定義insert函數(shù) ??????????????? 判斷順序表是否已滿
if (L->length == MAX_SIZE){
        printf("Error: the SequenceList if full.\n");
        return;
    }
?????插入位置的有效性
if(index< 0 || index >L->length){
            printf("Error index");
            return;
    }
?????開始插入操作
for (int i = L->length - 1; i >= index; i--){

         L->data[i+1] = L->data[i];
        }
        L->data[index] = element;
        L->length++;

將順序表中插入位置及之后的數(shù)據(jù)元素向后移動一個位置,從而騰出插入位置。然后,將新的數(shù)據(jù)元素插入到插入位置,并將順序表的長度加 1。這樣,就完成了順序表的插入操作。當(dāng)i == index時,需要將index下標(biāo)位置的元素向后移一位,這就是要寫等于的原因.

主函數(shù)實現(xiàn)功能舉例: ????????????????為SequenceList L賦值
SequenceList L = {{1,2,3,4,5,6},6};

有六個元素{1,2,3,4,5,6},length=6

?????打印順序表
printf("Original sequence list length: %d and element: ",L.length);
    for (int i = 0; i< L.length; i++){
        printf("%d ", L.data[i]);
    }
?????調(diào)用insert函數(shù)傳參實現(xiàn)插入操作
insert(&L,3,7);

在下表為3的位置上插入元素7

?????打印插入后的順序表
printf("After insertion sequence list length: %d and element: ",L.length);
    
    for (int i = 0; i
完整代碼如下:
#include#include#define MAX_SIZE 100
typedef struct {
    int data[MAX_SIZE];
    int length;
}SequenceList;
void insert(SequenceList *L,int index,int element){
    if (L->length == MAX_SIZE){
        printf("Error: the SequenceList if full.\n");
        return;
    }
    if(index< 0 || index >L->length){
            printf("Error index");
            return;
    }
        for (int i = L->length - 1; i >= index; i--){

         L->data[i+1] = L->data[i];
        }
        L->data[index] = element;
        L->length++;
}
int main(){
    SequenceList L = {{1,2,3,4,5,6},6};
    printf("Original sequence list length: %d and element: ",L.length);
    for (int i = 0; i< L.length; i++){
        printf("%d ", L.data[i]);
    }
    printf("\n");

    insert(&L,3,7);

    printf("After insertion sequence list length: %d and element: ",L.length);
    
    for (int i = 0; i
補充注意事項

在主函數(shù)中,L是一個結(jié)構(gòu)體變量,不是指針。在訪問它的成員時不能使用->運算符,會導(dǎo)致編譯器報錯。

錯誤寫法:
int main(){
    sqlist L = {{1,2,3,4,5,6},6};
    printf("before insert length = %d,element:",L->length);
    for (int i = 0; i< L->length; i++)
    {
        printf("%d ",L->data[i]);
    }
    printf("\n");
    insert(&L,3,5);

    printf("after insert length = %d,element:",L->length);
    for (int i = 0; i< L->length; i++)
    {
        printf("%d ",L->data[i]);
    }
    printf("\n");
    
    system("pause");
    return 0;
}

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

本文題目:順序表的插入操作-創(chuàng)新互聯(lián)
當(dāng)前URL:http://aaarwkj.com/article34/hchpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、微信公眾號、品牌網(wǎng)站制作、外貿(mào)建站、移動網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

99热这里只有精品三区| 日本高清免费黄色录像| 一卡二卡精品在线免费| 在线免费观看午夜视频| 日韩精品国产专区一区| 丝袜在线美腿视频网站| 欧美日韩台湾一区二区| 亚洲精品成人中文字幕| 精品人妻少妇一区二区三区| 国内午夜福利精品视频| 国产中文字幕有码视频| 国产精品久久99一区| 亚洲成av人一区二区三区| 亚洲97成人在线视频| 中文字幕乱码在线观看一区| 亚洲国产精品有码专区| 日韩精品一区二区三区人妻视频| 欧美日本一道本一区二区三区| 欧美午夜福利在线视频| 国产成人在线免费短视频| 国产成人亚洲综合色影视| 午夜一区二区精品视频国产| 成人又黄又爽大片在线观看| 高清免费在线自偷自拍| 国产有码视频一区二区三区| 日日摸夜夜添添出白浆| 丰满高潮少妇在线观看| 日韩av一区二区免费在线观看| 人成在线免费视频网站| 国产激情久久久久久影院| 日韩欧美国产精品加勒比| 中文字幕一区二区三区久久| 2018在线不卡爱视频| 热久久青草精品欧美一区| 日产一区二区三区网站| 国产91精品系列在线观看| 国产夫妻自拍在线视频| 蜜臀av一区二区高清| 国产丝袜在线福利观看| 欧美特黄大片在线观看| 亚洲欧美日韩国产一区二区三区|