面向对象 数组总结

数组
数组: 用于存放一系列(若干份)类型相同的数据,数组一旦定义,长度不可变
1.数组的定义: 静态和动态
数组的排序:让数组的所有元素按照一种固定的顺序进行排列
1.选择排序:
外层循环,每次将相应的最大数放在对应的位置,位置i从0~length-2
内层循环,假设i位置的元素为最大数max,用一个pos先记住i,遍历从i+1的位置开始到末尾所有的元素
如果有比max大的就让max记住该数,pos记住该数的位置,这样循环下来,pos一定是记住i~length-1

最大的数所在的位置,让pos位置的元素和i位置的元素换一把,即使i位置的元素就是最大了,自己和自
己换也每关系

选择排序
思路:
1.定义一个循环,控制要排列的次数,每次搞定一个最大数
假设用i来代表每次最大数摆放的位置,i的取值:0~length-2
2.定义一个变量pos记住最大数所在的位置,定义一个变量max记住最大数
max初始值为i位置的元素,pos初始值为i
3.定义一个内层循环,用于遍历数组找最大数
假设i位置的最大,找出i+1~length-1里面最大的比i还大的
遍历数组,如果有比max大的,将值给max,同时用pos记住该元素的角标
4.让最大数和i位置的元素交换

2.冒泡排序:
两层循环,外层循环,每次将最小数放在相应的位置,假设i为最小数的位置,i的取值:0~length-2
内层循环,不停冒泡,每次让当前数和前一个数比,小就换,假设j为当前数,j的取值:length-1~i+1
冒泡排序
思路:
1.定义一个外层循环,每次搞定一个最小数,i为最小数的位置,i的取值:0~length-2
2.定义一个内层循环,从数组的末尾开始向前冒泡,直到i+1的位置和i位置的元素进行完冒泡
j的取值:length-1~i+1

3.插入排序
插入排序
思路:
1.外层循环,每次搞定一个数(i)的位置,i的取值:1~length-1
2.内层循环,让第i个数不断和前面的数比较,小就换位置,直到遇上前面一个元素比它还小就停
还有,如果此元素被换到了第0个位置,也要停
二维数组: 数组的每一个元素又是一个数组

函数的递归:就是函数自己调用自己,必须要有结束条件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值