第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

【九月打卡】第5天【養(yǎng)成記】嵌入式挑戰(zhàn)第5天 學(xué)習(xí)順序表的相關(guān)操作

標(biāo)簽:
嵌入式

课程名称:

物联网/嵌入式工程师

课程章节(阶段二第五周 数据结构顺序表1-6):

顺序表之创建,判满,插入,输出(上)课程链接

老师:

大白老师

课程内容:

对顺序表进行创建,判满,插入,输出操作

学习笔记:

  • 线性表的顺序存储结构我们也叫做顺序表,它指的是用一段地址连续的存储单元依次存储线性表中的数据元素

  • 线性表的特征:对非空表,a0是表头,无前驱,a9是表尾,无后继。其它的每个元素an有且仅有一个直接前驱(an-1)和一个直接后继(an+1)。

  • 设顺序表 L=(a0,a1, ……,an-1),对 L的基本运算有:

  • 建立一个空表 : create_emtpy_seqlis()

  • 判断表是否为满 : is_full_seqlist();

  • 插入数据 : insert_data_seqlist();

  • 输出数据 : print_data_seqlist();

  • 判断表是否为空 : is_empty_seqlist();

  • 删除数据 : is_full_seqlist();

代码

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAX 20

typedef int datatype_t;

typedef struct{
        datatype_t buf[MAX]; //定义数组存储数据
        int n; //数组中有效元素的个数
}seqlist_t;

//为结构体在堆区分配空间
seqlist_t *create_empty_seqlist()
{
        seqlist_t *l = NULL;
        l = (seqlist_t *)malloc(sizeof(seqlist_t));        
        if(NULL == l)
        {
                printf("malloc is fail!\n");        
                return NULL;
        }

        memset(l,0,sizeof(seqlist_t));
        l->n = 0;
        return l;
}

//判断顺序表是否满了,
int is_full_seqlist(seqlist_t *l)
{
    return l->n == MAX ? 1 : 0;
}

//插入数据
void insert_data_seqlist(seqlist_t *l,datatype_t data)
{
    l->buf[l->n] = data;        
    l->n = l->n + 1;
}

//输出数据
void printf_data_seqlist(seqlist_t *l)
{
        int i = 0;

        for(i = 0;i < l->n;i++)
        {
                printf("%d ",l->buf[i]);        
        }
        printf("\n");
}
int main()
{
    seqlist_t *l = NULL;
    l = create_empty_seqlist();
    datatype_t data;
    printf("please input %d number : ",MAX);
    //满了只取前MAX个
    while(!is_full_seqlist(l))
    {
            scanf("%d",&data);        
            insert_data_seqlist(l,data);
    }
    printf_data_seqlist(l);
    // 释放空间
    delete l;
    l = NULL;
    return 0;
}

打卡

图片描述

图片描述

课程评价

本节主要讲解对顺序表的相关操作,这不仅是顺序表有这些操作,其他的数据结构也会有同样的操作,只是存储的方式不同。大白老师,边写代码,边用画图工具解释每一步操作,这些数据在内存是如何变化的,通俗易懂,然后再跟着老师敲代码,很快就掌握了本节课的内容。

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消