foreach(DictionaryEntry de in ht) { Console.WriteLine(string.Format("{0}-{1}", de.Key, de.Value)); } Console.WriteLine("**********************************************************");
foreach(DictionaryEntry de in ht) { Console.WriteLine(string.Format("{0}-{1}", de.Key, de.Value)); } Console.WriteLine("**********************************************************");
3 9 6 18 12 21 15 27
3 6 9 12 18 15 21 27
3 6 9 12 15 18 21 27
31 5 42 72 11 27
5
使用foreach语句对数组进行遍历。
一般使用ArrayList类实现添加/删除数组元素。
arr.Rank获取数组行数
arr.GetUpperBound(arr.Rank-1)+1获取数组列数
二维数组声明:
int[,] arr=new int[2,2];
int[,] arr=new int[2,2]{{1,2},{3,4}};
int[,] arr=new int[,]{{1,2},{3,4}};
动态二维数组:
int[,] arr=new int[m,n];
声明数组时可以不进行初始化,对数组进行初始化必须使用new运算符。
int[] arr;
int[] arr=new int[3]{1,2,3};
声明字符串数组时可以不用new运算符。
string[] str={"a","b","c"};
ArrayList
1、Clear用来移除所有元素
格式:public virtual void Clear()
2、Remove移除特定对象的第一个匹配项
public virtual void Remove (Object obj)
3、RemoveAt移除ArrayList指定索引处的元素
public virtual void RemoveAt(int index)
4、RemoveRange移除ArrayList中一定范围的元素
格式:public virtual void RemoverRange(int index ,int count)
二维数组的声明:type[,]ayyayName
例1:int[,]arr=new int[2,2];
例2:int[,]arr=new int[2,2]{{1,2},{3,4}};
例3:int[,]arr=new int[,]{{1,2},{3,4}};
获取行列的方法:
①
arr.rank//获取行数
arr.GetUpperBound((arr.Rank-1)+1)//获取列数
②
arr.GetUpperBound(0)+1//获取行数
arr.GetUpperBound(1)+1//获取列数
视频中
Console.Write(i + j.ToString() + " ");
和
Console.Write(i.ToString() + j.ToString() + " ");功能实现是一样的
一维数组:type[]arrayName;
type:数组存储数据的数据类型
arrayName:数组名称
考试第十六题答案是10
汉字的区间是 0x4e00--0x9fbb
arr.Rank 行数
arr.GetUpperBound(arr.Rank-1)+1 列数
Convert是专门转换类型的一个封装类
基本可以转换所有常用类型
一维数组的声明和使用
:数组的维数为1
type[] arrayName;
int[] arr;
数组的初始化:
int arr1=new int[5]{1,2,3,4,5};
string[] arrstr={"a","b","c"};
数组是通过 1、指定数组的元素
2、数组的维度
3、数组每个维度的上限和下限来定义的
希尔排序法(缩小增量法) 属于插入类排序,是将整个无序列分割成若干小的子序列分别进行插入排序的方法。
希尔算法思想简单描述
在直接插入排序算法中,每次插入一个数,使有序序列只增加1个节点,并且对插入下一个数没有提供任何帮助。如果比较相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比较就可能消除多个元素交换。D.L.shell于1959年在以他名字命名的排序算法中实现了这一思想。算法先将要排序的一组数按某个增量d分成若干组,每组中记录的下标相差d.对每组中全部元素进行排序,然后再用一个较小的增量对它进行,在每组中再进行排序。当增量减到1时,整个要排序的数被分成一组,排序完成。
下面的函数是一个希尔排序算法的一个实现,初次取序列的一半为增量,以后每次减半,直到增量为1。
希尔排序是不稳定的。
类型.Parse与Convert有什么区别呢?他们的区别在于Parse的参数只能是字符串类型(string),只能把字符串类型转成其它类型,而Convert可以某一对象的值转换成很多类型。
如:
bool Bl = = true;
int a = Convert.ToInt16(Bl); //只能这样转换,否则通不过。
数组与集合这章难度有了提升,交错数组比较绕
rank是秩
ArrayList
1.add方法:添加到结尾
Add(Object value)
2.Insert方法:将元素插入到指定位置
Insert(int index,Object value)
3.Clear():移除所有元素
4.Remove(Object obj):移除第一个匹配项
5.RemoveAt(int index):移除指定处的元素
6.RemoveRange(int index,int count):移除范围内元素(起始点,总数)
7.Contains(Object item):在ArrayList找到则返回TRUE;否则FALSE
冒泡
for
(
int
i = 0; i < arr.Length - 1; i++)
{
for
(
int
j = 0; j < arr.Length - 1 - i; j++)
{
if
(arr[j] > arr[j + 1])
{
temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
Array.Sort从小到大
Array.Reverse从大到小
二维数组声明
int[,]arr=new int[2,2];
int[,]arr=new int[2,2]{{1,2}{3,4}};
行数:arr.Rank;
列数:arr.GetUpperBound(arr.Rank-1)+1;
动态二维数组声明
int m=2;
int n=2;
int[,] arry2=new int[m,n];