数据结构--C语言要点总结

C语言要点总结

1、typedef long byte_4;   给已知数据类型long起个新名字,叫byte_4。

2、typedef struct tagMyStruct MyStruct;     MyStruct实际上相当于struct tagMyStruct,我们可以使用MyStruct varName来定义变量。

C语言允许在结构中包含指向它自己的指针,

p->size的含义就是引用指针p所指向的地址处的对象的size成员

->操作符用于指针变量(在C中,一般是指向struct变量的指针),"->"为指向结构体成员的运算符

设p=&a  在形参表中,以&打头的参数即为引用参数

p->size表示指针变量p指向的 结构体变量a的成员变量 size

与下面的等价 a.size

/* 从最大堆H中取出键值为最大的元素,并删除一个结点 */

ElementType DeleteMax( MaxHeap H )
{
    int Parent, Child;
    ElementType MaxItem, temp;
        if ( IsEmpty(H) )
            printf("最大堆已为空");
     return;
}
时间: 2024-08-29 21:01:00

数据结构--C语言要点总结的相关文章

实现基于数据结构的语言

创建任何 DSL 都应该从定义需要解决的问题开始.这里,我们需要定义一个 DSL 库(有时也称为组合库,combinators library),用于二维图形,这是一个很明显的选择.这个示例演示如何用大量简单的基本图形构建出复杂的结构.在计算机屏幕上的图像本质上就是线条和多边形的集合,尽管显示出来的图形可能极其复杂.这个示例用四个模块表现:第一,清单 12-1,提供创建图片的基本操作(primitives):第二,清单12-2,如何实现解释图片:清单 12-3 和清单 12-4 用示例演示如何使

《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明

先附上文档归类目录: 课本源码合辑  链接??? <数据结构>课本源码合辑 习题集全解析  链接??? <数据结构题集>习题解析合辑 博主有话说: 01.自学编程,难免思路阻塞,所以从今天起,我(StrayedKing)决定在本博客陆续更新严蔚敏,吴伟民版<数据结构-C语言版>各章节的课本源码和配套习题集答案解析,目的是为了整理数据结构中的知识点,并与网友交流意见,集思广益,共同进步.        ★注★ 左侧随笔分类下用两个栏目:<课本源码>.<习

数据结构C语言实现——线性链表

declaration.h #ifndef DECLARATION_H_INCLUDED #define DECLARATION_H_INCLUDED #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 #define ElemType int typedef ElemType* Triplet; typedef int Status; type

数据结构c语言版串的操作

#include<stdio.h> #include<malloc.h> #include<string.h> //定义字符串的结构体 typedef struct { char *str;//字符串 int maxLength;//最大可以存放字符的长度 int length;//目前的字符长度 }DString; //1.初始化操作 //初始化操作用来建立和存储串的动态数组空间以及给相关的数据域赋值 void Initiate(DString *s,int max,

数据结构C语言实现介绍

刚刚结束的大二上学期学习了数据机构C语言版这门课,在接下来的一个月中准备把课程的代码和知识点总结一下,就有了这个专题:数据结构C语言实现,在这里我将用C语言实现最基本的数据结构以及一些基本的算法,以下是我这个专题的内容: 1. 数据结构及算法简介: 主要介绍数据结构及算法的基础知识,一些基本的概念和术语,以及算法的定义.算法的特性.算法的时间复杂度和空间复杂度 2.顺序表的定义及算法实现: 主要介绍顺序表的定义及特点,实现顺序表的存储结构以及基本操作 3.单链表的定义及算法实现:  主要介绍单链

Java初学者必学的六大Java语言要点

本文主要讲述Java新手之学习Java语言的六大要点,更多Java教程知识,请登陆疯狂软件教育官网. Java的学习是比较复杂的,主要表现在相关的一系列平台.规范和协议上.有经验的Java程序员都知道,只掌握了Java语言本身很难开发应用程序.本文不讨论这些复杂的概念,而是我是在广州参加的培训,现在从初学者的角度,对于Java语言本身的学习提出自己的见解和建议. 本文的讨论基于以下假设: 1. 学习的目的是为了将来进行应用程序的开发,而不是进行语言理论研究 2. 将来的应用开发是在成熟的平台上展

深入浅出数据结构C语言版(5)——链表的操作

上一次我们从什么是表一直讲到了链表该怎么实现的想法上:http://www.cnblogs.com/mm93/p/6574912.html 而这一次我们就要实现所说的承诺,即实现链表应有的操作(至于游标数组--我决定还是给它单独写个博文比较好~). 那么,我们的过程应该是怎么样的呢?首先当然是分析需要什么操作,然后再逐一思考该如何实现,最后再以代码的形式写出来. 不难发现,我们希望链表能支持的(基础,可以由此延伸)操作就是: 1.给出第n个元素 2.在第n个元素的后面插入一个元素(包含在最后一个

深入浅出数据结构C语言版(8)——后缀表达式、栈与四则运算计算器

在深入浅出数据结构(7)的末尾,我们提到了栈可以用于实现计算器,并且我们给出了存储表达式的数据结构(结构体及该结构体组成的数组),如下: //SIZE用于多个场合,如栈的大小.表达式数组的大小 #define SIZE 1000 //表达式的单个元素所使用的结构体 typedef struct elem { int num = 0; //若元素存储操作数则num为该操作数 char oper = '='; //若元素存储操作符则oper为该操作符 bool IsNum = false; //用于

《数据结构(C语言版)》学习——day1,初识数据结构

1. 什么是数据结构 一般而言,使用计算机解决一个具体的问题时,大致需要经过以下几个步骤: ① 从具体的问题中抽象出一个适当的数学模型: ② 设计一个求解该数学模型的算法: ③ 编写程序,进行测试.调整,直至得到最终的问题解答. 对实际问题建立数学模型的实质是:分析问题,并从中提取操作的对象,并找出这些对象间含有的关系,然后使用数学的语言加以描述. 数据结构(data structure)可以定义为:相互之间存在一种或多种特定关系的数据元素的集合. 在任何问题中,数据元素都不是孤立存在的,而是存