- 什么是数组?
所谓数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。
简单来说,数组就是储存多个相同类型数据的集合。
- 数组的特点有什么?
- 数组是相同数据类型的元素的集合
- 数组中各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
- 数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。
例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。
- C#中数组的声明方式有哪些?
- 第一种声明方式
int[] num = new int[10]; //表示数组长度为10,索引为0-9, int 类型
int[] sum = new int[20]; //表示数组长度为20,索引为0-19, int 类型
此种声明方式,是根据中括号中的数值确定数组的长度
- 第二种声明方式
int[] num2 = new int[] { 1, 2, 3, 4, 5 }; //此数值只能存5个值
此种声明方式,是存大括号内的固定长度的值。如:此声明中,数组长度为5.
- 第三种声明方式
int[] num = new int[3] { 1, 2, 3, }; //此数组只能存3个值
此种声明方式,根据中括号内的数值确定数组的长度。如:在此声明中,数组的长 度为3
- 第四种声明方式
int[] num = { 1, 2, 3, 4, 5, 6 };
- 数组如何使用?
数组练习:
1、数组中的数值进行排序
int[] avg = new int[] { 4, 32, 64, 23, 64, 34, 75, 8 };
Array.Sort(avg); //排序
//Array.Reverse(avg); //反转
for (int i = 0; i < avg.Length; i++)
{
Console.WriteLine(avg[i]);
}
Console.ReadKey();
2、对数组执行冒泡排序
//冒泡排序,从小到大排列
//首先,定义一个数组
int[] nums = new int[] { 1, 3, 32, 75, 543, 444, 343, 6, 67 };
int temp = 0; //定义一个变量接收最大值,满足数组的值的交换条件
for (int j = 0; j < nums.Length; j++) //定义一个for循环,达到满足已经排过序的数组不用重复排序
{
for (int i = 0; i < nums.Length - 1 - j; i++) //定义要给for循环,执行相邻两个数组的交换和比较大小。
{
if (nums[i] > nums[i + 1]) //比较相邻数组的大小,执行排序
{
temp = nums[i];
nums[i] = nums[i + 1];
nums[i + 1] = temp;
}
}
}
for (int k = 0; k < nums.Length; k++) //遍历数组,显示数组
{
Console.WriteLine(nums[k] + "\n");
}
Console.ReadKey();
- 扩展
遍历是什么?
遍历:所谓遍历(Traversal),是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。访问结点所做的操作依赖于具体的应用问题。 遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。当然遍历的概念也适合于多元素集合的情况,如数组。
树的遍历是树的一种重要的运算。所谓遍历是指对树中所有结点的信息的访问,即依次对树中每个结点访问一次且仅访问一次。树的3种最重要的遍历方式分别称为前序遍历、中序遍历和后序遍历。以这3种方式遍历一棵树时,若按访问结点的先后次序将结点排列起来,就可分别得到树中所有结点的前序列表、中序列表和后序列表。相应的结点次序分别称为结点的前序、中序和后序。
那么,数组的遍历是什么?这里不再解释了哈。