博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构一
阅读量:5045 次
发布时间:2019-06-12

本文共 729 字,大约阅读时间需要 2 分钟。

线性结构

  连续存储【数组】

  离散存储【链表】

  线性结构的两种常见应用:栈,队列

衡量算法的标准:

   1.时间复杂度:大概程序要执行的次数,而非执行的时间

 

   2.空间复杂度:算法执行过程中大概所占用的最大内存

 

   3.难易程度

 

    4.健壮性

 

  数据结构的地位:

 

              数据结构是软件中最核心的课程

 

          程序=数据的存储+数据的操作+可以被计算机执行的语言
#include
void Show_Array(int *p,int len)//a为取地址,5长度{ p[0] = -1;//p[0] == *p}int main(void){ int a[5] = {
1,2,3,4,5}; Show_Array(a,5);// a等价于&a[0],&a[0]本身就是int *类型 printf("%d\n",a[0]); return 0;}
预备知识:
            指针
                int   *   p;//p是个变量名字,int   * 表示p变量只能存储int类型变量的地址
               定义
                        地址:内存单元的编号
                        从0开始的非负整数   范围0-----4G-1
                        指针:指针就是地址,地址就是指针
                                    指针变量是存放内存单元地址的变量
                                    指针的本质是一个操作受限的非负整数
注意:
            1.指针变量也是变量,只不过它存放的不能是内存单元的内容,只能存放内存单元地址
            2.普通变量前不能加*
            3.常量和表达式前不能加&    (&是取地址符)
 
下标和指针的关系: a[i] 《==》 *(a+i)
 
            结构体
            动态内存的分配和释放
            

 

转载于:https://www.cnblogs.com/pig1314/p/8652812.html

你可能感兴趣的文章
端口状态
查看>>
POJ:2976 Dropping tests(二分+最大化平均值)
查看>>
linux中断
查看>>
面向对象的三大特征之一封装
查看>>
集合框架(上) 学生选课——添加,查询,修改,删除课程
查看>>
应收发票相关 脚本
查看>>
scss简单用法
查看>>
javascript学习笔记(二)js一些基本概念
查看>>
stl map中的lower_bound和 upper_bound
查看>>
蓝图编程指南(翻译)
查看>>
UE4入门与精通
查看>>
【基于WinForm+Access局域网共享数据库的项目总结】之篇二:WinForm开发扇形图统计和Excel数据导出...
查看>>
NTP配置实践
查看>>
使用Heroku,需要locale至zh_CN,代替zh-CN
查看>>
为Windows 7的winsxs目录瘦身,谨慎。
查看>>
微信第三方开发行业解决方案
查看>>
在自由软件的价值
查看>>
java对象数组
查看>>
Linux pipe函数
查看>>
关于COOKIE数据加密的思路
查看>>