数组中的一维数组

一、一维数组的定义、引用、初始化

1、定义

        一次性定义多个变量。

形式:类型说明符    数组名【常量表达式】

其中的类型说明符不能是void类型,否则编译错误。常量表达式必须为整型,且不能为负,数组的元素个数>=1。定义数组时的方括号为类型说明符,不是下标运算符。

2、引用

形式:数组名【下标】

其中的方括号为下标符。

例:

3、初始化

形式:类型说明符 数组名【常量表达式】={初始化列表}

其中初始化列表(1)其个数大于数组元素个数时,报警,会越界访问。

                           (2)小于数组元素个数时,只赋值给前几个,后面的为0。

数组中的类型名:类型说明符  【常量表达式】

(即去掉变量名,剩下类型名)  例:int [a]

初始化时可省略常量表达式中的元素个数。

数组元素的存放具有三大性质:(1)单一性  (2)连续性  (3)有序性。

注意:(1)数组中不能写a = i。(1)类型不匹配,a为数组类型,i为整型;(2)a为数组的数组名,代表的是数组的首元素地址,a与a[0]的值相同;(3)a为常量,为右值,不能作为左值被赋值。

(2)可变的元素不能被初始化。

例如:int n = 10;int  a[n] = { };

(3)坚决不能产生数组的越界访问。

例如:int  a[10];  a[10] = 100;  但是该数组的元素只从a[0]到a[9]。

二、算法

1、极值

2、逆序

3、排序

(1)选择排序

        在数组合适的位置上放上合适的数。     比较次数:(n*(n-1)d)/2

算法复杂度(最多执行的最高次项):O(n) = n^2。  可评判算法优劣。

空间复杂度:1。

(2)冒泡排序

        相邻两个元素两两比较,小的放前,大的放后。( i 要通过 j 来限制其范围)

其中 i 每次重新比较,都比上一轮少一个。

(3)插入排序法

一种方法:可拷贝一个同样大小或者更大宽度的新数组,将原数组元素拿出来,按照有序放在新数组中。

另一种方法:可以不拷贝新数组,直接进行原地插入。

     

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值