数据结构与算法基础知识(详解)

一. 数据结构与算法概述:
  1.定义: 我们如何把现有的问题以特定的数据类型和特定的存储结构保存主存储器(内存)中,并在此基础上为实现某些功能查找特定元素,删除某个元素,对元素排序)为此进行的操作,叫做算法 .

2.衡量算法的标准:
  1.时间复杂度:程序执行次数,非执行时间;
  2.空间复杂度:算法执行过程中大概占用的最大内存
  3.可读性;
  4.健壮性(容错性)

二.指针

1.定义:指针即是地址,地址即是指针。指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。

地址: 内存单元编号(内存单元地址)(0~ffffffff)

2.特点
  1.指针变量存放内存单元地址(内存单元编号)的变量
  2.指针(地址)是一个操作受限(不可相加减,乘除)的非负整数

三.数组与指针关系:

int arr[4]={1,2,3,4}


  1.一维数组名(arr)是个指针常量
  2.一个字节是8位,1个字节是一个地址
  3.任意指针变量均占4个字节,用第一个字节的地址表示整个变量;

  4.不能将二维数组的数组名赋给指针数组的数组名,,因为两者的类型不一致,二维数组名的类型是指向型的指针,而指针数组的的数组名是指向int *[]类型的指针。

int i[][];
int* j[];
j = i	//不被应许

暂时就分享到这吧,以后再慢慢补充,谢谢大家学习!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值