C的回归基础学习3——数组

C的回归基础学习3——数组

前言

计算机比人类强的地方在于可以快速地做简单的运算(这由循环的递归等完成)和强大的记忆能力,而这主要是由若干的数据结构组成,而数据结构往往就是由数组构成。

一维数组

  • 数组的下标一律从0开始
  • 数组名实际上是一个地址常量,是第一个元素的地址
  • 字符串数组的最后一位是 ‘\0’,所以定义字符串数组时最好定义大一点
  • 数组的初始化
    1.在函数外定义的数组内全为0;
    2.在函数内定义会有奇怪的值;
    3.int data[10]={1,1,1}只会将前三个元素赋值为1,其他全为0;(在内外均一样)
  • 建议在定义数组函数时使用常量 const int MAX=xxxxx;定义方便一次性修改

多维数组(主要是二维数组)

  • 数组的初始化:基本与一维数组相同,只是第二维同维元素需要在一个大括号里
  • 二维数组的一个重要应用:矩阵(但是一般是在结构体中完成)
  • 半维数组:我记忆中一个不太正确的称呼
const int MAX=1000;
int a[MAX][MAX][2];

就是指其中一维的大小只能构成一个常数的空间复杂度,在某些dp当中很好用

结语

其实数组没啥好讲的,当时老师飞快把数组讲完后就让我们学排序了,不过学了那么多,现在就只记得桶排序打法,归并排序算法 以及Sort(start,end,cmp)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值