using System;
using System.Linq;
namespace Test1
{
class Program
{
static void Main(string[] args)
{
//比较大小
//Console.WriteLine("请输入第一个数:");/*常规地依次输入三个数,注意这里数的类型定义为double,范围更大*/
//double a = double.Parse(Console.ReadLine());
//Console.WriteLine("请输入第二个数:");
//double b = double.Parse(Console.ReadLine());
//Console.WriteLine("请输入第三个数:");
//double c = double.Parse(Console.ReadLine());
//double min, max;//引入两个变量
//min = a < b ? a : b;//利用三重运算符,将a,b中的较小值赋予min;
//min = min < c ? min : c;//再次将已得的a,b中的较小值与c进行比较,较小值赋予min,这样就将三个数中的较小值赋予了min
//max = a > b ? a : b;//那么求三个数中的最大值就一个道理了哈哈
//max = max > c ? max : c;
//Console.WriteLine("输入的三个数中的最小值为{0},最大值为{1}", min, max);//输出结果
//Console.ReadLine();
//Fibonacci 斐波那契数列-费式数列
//int n = 1, nbegin = 0;
//for (int k = 0; k < 20; k++)
//{
// Console.WriteLine("第{0}个为:{1}", k + 1, n);
// int i = nbegin;//0 0,
// nbegin = n;//1 1
// n = n + i;//1=1+0
//}
//Console.Read();
//最经典冒泡排序
//int[] arr = { 61, 2, 3, 1, 5, 6, 7, 8, 10, 9 };
//for (int i = 0; i < arr.Length - 1; i++)
//{
// for (int j = 0; j < arr.Length - i - 1; j++)
// {
// if (arr[j] > arr[j + 1])
// {
// int temp = arr[j];
// arr[j] = arr[j + 1];
// arr[j + 1] = temp;
// }
// }
//}
//for (int i = 0; i < arr.Length; i++)
//{
// Console.WriteLine(arr[i]);
//}
//冒泡排序(Sort方法)与逆序排列
//编号 方法 描述
//1 Clear() 清空数组中的元素
//2 Sort() 冒泡排序,从小到大排序数组中的元素
//3 Reverse() 将数组中的元素逆序排列
//4 IndexOf() 查找数组中是否含有某个元素,返回该元素第一次出现的位置,如果没有与之匹配的元素,则返回 - 1
//5 LastIndexOf() 查找数组中是否含有某个元素,返回该元素最后一次出现的位置
//
//Array.Sort(arr);
//Console.WriteLine("排序后的结果为:");
//foreach (var b in arr)
//{
// Console.Write(b + " ");
//}
//Console.WriteLine();
//Array.Reverse(arr);
//foreach (var a in arr)
//{
// Console.Write(a + " ");
//}
//回文
//int flag = 0;
//string s = Console.ReadLine();
//char[] c = s.ToCharArray(); //ToCharArray( )的用法,将字符串对象中的字符转换为一个字符数组。
//for (int i = 0, j = c.Length - 1; i < j; ++i, --j)
//{
// if (c[i] != c[j])
// {
// flag = 1;
// break;
// }
//}
//if (flag == 1) Console.WriteLine("no");
//else Console.WriteLine("yes");
//Console.ReadKey();
//Intersect 交集,Except 差集,Union 并集-------------//集合运算
int[] oldArray = { 1, 2, 3, 4, 5 };
int[] newArray = { 2, 4, 5, 7, 8, 9 };
var jiaoJi = oldArray.Intersect(newArray).ToList();//2,4,5
var oldChaJi = oldArray.Except(newArray).ToList();//1,3
var newChaJi = newArray.Except(oldArray).ToList();//7,8,9
var bingJi = oldArray.Union(newArray).ToList();//1,2,3,4,5,7,8,9
Console.WriteLine("交集:" + string.Join("、", jiaoJi));
Console.WriteLine("所有属于A且不属于B的元素构成的差集:" + string.Join("、", oldChaJi));
Console.WriteLine("所有属于B且不属于A的元素构成的差集:" + string.Join("、", newChaJi));
Console.WriteLine("并集:" + string.Join("、", bingJi));
}
}
}