数据结构小总结

1.用数组表示线性表的优点是便于随机存取
2.数据的逻辑结构不是指数据的各数据项之间的逻辑关系而是数据元素间的逻辑关系
3.抽象数据类型中基本操作的定义与具体实现无关
4.与数据元素本身的形式、内容、相对位置、个数无关的是数据的逻辑结构。
5.数据元素是数据的基本单位,数据项是有独立含义的数据最小单位,数据结构概念包含的主要内容是数据的逻辑结构和数据的存储结构,数据的逻辑结构分为线性结构和非线性结构。
6.malloc()是重新分配一个空间,realloc()是在原有的基础上再加上或减少一段空间。
int *p = (int )malloc(20sizeof(int));
int *pp = (int )realloc(p, sizesizeof(int));
7.深度历遍

void DFS( MGraph Graph, Vertex V, void (*Visit)(Vertex) )
{
    //Vertex i;
    Visited[V] = true;
    Visit(V);
    for(int i = 0; i < Graph->Nv ; i++)//Graph->Nv 确保改变顶点个数也可以通过
    {
        if(Graph->G[V][i] == 1&&!Visited[i])//==1确保同sample,但改变Visit函数定义时可以通过
        {
           DFS(Graph, i, Visit);
        }
    }
    return;
}

循环单链表循环插入和删除

/* 请在这里填写答案 */
Status ListCreate_CL(LinkList &CL){
    CL = (LinkList)malloc(sizeof(int));
    LinkList rear = CL;
    rear->next = NULL;
    int n;
    scanf("%d",&n);
    for(int i = 0;i < n;i++){
        LinkList p = (LinkList)malloc(sizeof(LNode));
        int m;
        scanf("%d",&m);
        p->data = m;
        rear->next = p;
        rear = p;
    }
    rear->next = CL;
    return OK;
}

void ListDelete_CL(LinkList &CL, ElemType min, ElemType max){
    LinkList p = CL->next,q;
    while(p->next != CL){
        q = p->next;
        if(q->data>min&&q->data<max)
        {
            p->next = q->next;
            free(q);
        }
        else
            p = p->next;
    }

}

06-07 1391
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值