自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 汉诺塔

汉诺塔是由三根杆子A,B,C组成的。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆:每次只能移动一个圆盘;大盘不能叠在小盘上面。提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须尊循上述两条规则。问:如何移?最少要移动多少次?汉诺塔是根据一个传说形成的一个问题: 有三根杆子A,B,C。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆: 每次只能移动一个圆盘; 大盘不能叠在小盘上面。 提示.

2021-02-19 18:37:17 160

原创 用C#做Point2D,绘制离散图

1.2.1编写一个Point2D的用例,从命令行接受一个整数N。在单位正方形中生成N个随机点,然后计算两点的最近距离。 解析: 1、用Chart建立一个离散图 2、两点距离公式:Math.Sqrt((x2-x1)2+(y2-y1)2); 代码 namespace Graph { public partial class Form1 : Form { public Form1() { InitializeComponent(); textBox1_TextChanged(null, null);..

2021-02-18 17:10:50 1219 1

原创 换硬币

换硬币 输入:coins={1,2,3,4}; target=10。最少使用的硬币数是3 输入:coins={1,5,11}; target=20 。最少使用的硬币数是4 思路,首先应该有两个null;‘ 1、memo[n]为-2;//memo[0]=0; 2、返回来的count为-1; 代码: class Flipcoins { public void MainFlipCoins() { //输入:coins={1,2,3,4}; target=10 // 最少使用的硬币

2021-02-18 12:53:15 76

原创 共同祖先

共同祖先 1 2 3 4 5 6 7 N N 8 9 N N 10 11 输入:int[] nums={1,2,3,4,5,6,7,N,N,8,9,N,N,10,11}; 代码: class Ancestors { public class Trees { public int NodeTree { get; set; }/

2021-02-18 12:50:03 98

原创 偷金子

偷金子 输入:houses={3,5,2,10} 解释: –有四间屋子,金子的价值各是3、5、2、10 –偷的时候,不能偷连续的房间 输出15(可以用备忘模型) memo[id]+memo[id+2] memo[id]=max{ 0+memo[id+1] 代码: class LoadRunner { public void MainLoadRunner() { // memo[id] + memo[id + 2] //memo[id] = max{ //

2021-02-18 12:46:58 128

原创 斐波那契

斐波那契 0,1,1,2,3,5,8,13,21,34,55,89,144,233,… 计算F(n) 输入:n=5 输出:5 代码: static void Main(string[] args){ int[] memo=new int[100]; //新建长度为100的memo数组,除了 memo[0]=0,memo[1]=1,其他每个值都为-1; for(int i=0; i<memo.Length; i++){ memo[i]=-1; } } memo[0]=0

2021-02-18 12:43:55 47

原创 安排航班

安排航班 输入: flights={{{1,1000},{2,2000}},{2,500},{1,500}} 解析: 从0号到1号1000,从0号到2号2000 从1号到2号500,从2号到1号500 [节点、经停次数,最短路费] 代码: class ArrangFlights { //flights={{{1,1000},{2,2000}},{2,500},{1,500}} // 0 1 2 public class Fl

2021-02-18 12:41:53 44

原创 安排课程

安排课程 输入: prerequisite={{1},{3},{3},{}} 解释:一共有四门课,编号分别为0、1、2、3,第0门需要完成第1门课,第1门课需要先完成第3门课,第2门需要完成第3门课 思路:1、preClass数量不能动,动了顺序就不对了 2、创建List YGcount 用于记录已经上过的课程,如果上过的课程=课程总数,跳出 3、如果preClass里的预备上的课程为0,上过的课程+1 代码: class ArrangClass { public void ClassMai

2021-02-18 12:38:44 182

原创 自己写的,如果能改进的话,欢迎一起探讨。

随机匹配 编写一个使用BinarySearch的程序,它从命令行接受一个整形参数T,并会分别针对 N=103、104将以下实验运行T遍:生成大小为N的随机正整数数组(1000000–2000000),并找出 同时存在于两个数组中的整数的数量。打印一个表格,对于每个N,给出T次实验中该数量的平均值。 分析 1、接受一个整形参数T,运行:T遍 2、数组大小:N=103、104 3、数组存入随机六位正整数数组 4、计算同时存在于两个数组中的整数的数量的平均值 5、书写方式:运行T:XX,大小N:10^3,

2021-02-18 12:28:16 58

原创 二分法查找与暴力查找。(C#)

寻找变化(二分法) 输入:int[] nums={0,0,0,1,1,1,1,1}; 寻找1第一次出现的位置 public void ClassMain(){ int left=0;//左指针 int right=nums.Length-1;//右指针 while(left<right){//如果左指针>=右指针 int index=left+(right-left)/2;//定位的位置*** if(nums[index]==1){ right=index; }else{ left=inde..

2021-02-15 23:11:03 140

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除