C and C++

这是博主关于C,C++的总结及经验.一切从hello world!开始 : )

动态优先权的进程调度算法的模拟

实验目的:通过动态优先权算法的模拟加深进程概念和进程调度过程的理解,并学习撰写规范的科学研究报告。
设计思路:
1.对N个进程采用动态优先权算法的进程调度;
2.每个用来标识进程的进程控制块PCB用结构描述,包括以下字段:进程标识数ID,进程优先数PRIORITY,进程以占用的CPU时间CPUTIME,进程还需占用的CPU时间ALLTIME,进程状态STATE等。
3.优先数改变的原则:进程在就绪队列中呆一个时间片,优先数增加1,进程每运行一个时间片优先数减3。
4.设置调度前的初始状态。
5.将每个时间片内的进程情况显示出来。
Continue reading

method of exhaustion on coin array problem

/*
method of exhaustion on coin array problem
金币阵列问题

问题描述:

有m x n (m< =100, n<=100 ) 个金币在桌面上排成一个m行n 列的金币阵列。每一枚金币或正面朝上或背面朝上。用数字表示金币状态,0表示金币正面朝上,1 表示背面朝上。金币阵列游戏的规则是: (1)每次可将任一行金币翻过来放在原来的位置上; (2)每次可任选2 列,交换这2 列金币的位置。 Continue reading

弗洛伊德算法Floyd 校园简单导游实现

设计一个校园导游程序,为来访的客人提供各种信息咨询服务。
 基本要求:
(1) 设计你所在的学校的校园平面图,所含景点不少于5个。以图中顶点表示校内各景点,存放景点的名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。
(2) 为来访客人提供图中任意景点相关信息的咨询。
(3) 为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
Continue reading

迪杰斯特拉Dijkstra算法 图论最短路径问题

//在Dijkstra算法里,为了求源点v0到其他各个顶点vi的最短路径及其长度,需要设置三个数组

//dist[n]: dist[i]表示当前找到的从源点v0到终点vi 的最短路径长度,初始化时,dist[i]=Edge[v0][i],即邻接矩阵的第v0行

//S[n]: S[i]为0表示顶点vi 还未加入到集合S中,S[i]为1表示vi已经加入到集合S中,初始化时,S[v0]为1,其余为0,表示最初集合S中只有顶点v0

//path[n]: path[i]表示v0到vi的最短路径上顶点vi的前一个顶点序号,采用”倒向追踪”的方法,可以确定v0到顶点vi的最短路径上的每个顶点

//在Dijkstra算法里,重复做以下步骤: Continue reading