约瑟夫问题的两种解法 设有n个人围坐在一个圆桌周围,先从第s个人开始报数,数到第m个人出列,然后从出列的下一个人重新开始报数,数到第m个人又出列……如此重复,直到所有的人出列为止。本程序分别用链式存储结构(循环链表)和顺序存储结构(数组)解决约瑟夫问题,可供初学者辨别这两种存储结构的异同 用户输入:n,s,m(逗号隔开) 输出:出列顺序表
标签:
上传时间: 2013-12-19
上传用户:yzhl1988
网上流传的5个面试题目,采用C#语言编写。题目如下: 一、设计一个自然数数组,包含50个范围在(0,200)的自然数,并从小到大排列,随机产生一个范围在(0,200)自然数,去数组中用二分查找法查找,如果存在返回值并获取这个数在数组中的位置(第几个);如果不存在,返回假。 要求: 1。编写初始化数组。并提供借口显示数组序号和内容; 2。对数组排序,并提供接口显示数据需要和内容; 3。随机产生自然数; 4。用二分法查找随机数。 二、设计一个程序,当主窗口显示时,从窗口客户区的左上角向右上角缓慢下落一个小三角形,在下落过程中,小三角形做逆时针缓慢旋转,到达右下角时,正好以一条底边和客户区边框重合并停止。在改变窗口大小时,停止三角形的下 落,重新从左上角开始下落。 要求:在整个屏幕上只能有一个三角形在移动。
标签: 面试题
上传时间: 2013-12-22
上传用户:agent
最小生成树 一.问题描述 构造一无向连通网,用Prim算法或Kruskal算法实现最小生成树的算法 二.实验目的 1.掌握网的基本概念和连通网的存储结构 2.掌握最小生成树的算法实现 三.实验要求 1.确定边的相邻顶点和权植,建立无向连通网,实现最小生成树。 2.Prim算法思想: 设G=(V,E)是一个无向连通图,令T=(U,TE)是G的最小生成树。T的初始状态为U={v0},TE={},然后重复执行下述操作:在所有u,v的边中找一条代价最小的边(u,v)并入集合TE,同时v并入U,直至U=V为止。此时TE中必有n-1条边,T就是最小生成树。
标签: 生成树
上传时间: 2016-06-28
上传用户:BOBOniu
1553B总线是MIL-STD-1553总线的简称,其中B就是BUS,MIL-STD-1553总线是飞机内部时分制命令/响应式多路复用数据总线。1553B数据总线标准是20世纪70年代由美国公布的一种串行多路数据总线标准。1553B总线能挂31个远置终端,1553B总线采用指令/响应型通信协议,它有三种终端类型:总线控制器(BC)、远程终端(RT)和总线监视器(BM);信息格式有BC到RT、RT到BC、RT到RT、广播方式和系统控制方式;传输媒介为屏蔽双绞线,1553B总线耦合方式有直接耦合和变压器耦合;1553B总线为多冗余度总线型拓扑结构,具有双向传输特性,其传输速度为1Mbps传输方式为半双工方式,采用曼彻斯特码进行编码传输。
上传时间: 2014-01-18
上传用户:13681659100
1.模拟操作系统内存管理 2.内容要求: ⑴ 自定义内存管理策略对应的数据结构; ⑵ 随机产生一组申请和收回进程及要求分配和收回内存的大小,实现内存分配和收回算法(可以采用多种分配算法),计算内存利用率; ⑶ 显示内存分区管理的分配和收回过程。
上传时间: 2013-12-23
上传用户:lijianyu172
1. 内部排序演示 问题描述 设计一个测试程序比较几种排序算法的关键字比较次数和移动次数以取得直观感受。 基本要求 (1)对起(冒)泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、堆排序算法进行比较; (2)待排序的元素的关键字为整数。其中的数据要用伪随机产生程序产生(如10000个),至少用5组不同的输入数据做比较,再使用各种算法对其进行排序,记录其排序时间,再汇总比较; (3)演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标值的列表,用条形图(星号表示)进行表示,以便比较各种排序的优劣。 测试数据 由随机数产生器生成 实现提示 主要工作是设法在已知算法中的适当位置插入对关键字的比较次数和移动次数的计数操作。程序还可以考虑几组数据的典型性,如:正序、逆序和不同程度的乱序。注意采用分块调试的方法。 选作内容 (1)对不同表长进行比较 (2)验证各算法的稳定性
上传时间: 2014-01-03
上传用户:lindor
一、 实验目的: (1) 熟练掌握链栈的基本操作及应用。 (2) 利用链表作为栈的存储结构,设计实现一个求解迷宫的非递归程序。 二、实验内容: 【问题描述】 以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。 【基本要求】 首先实现一个链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。如:对于下列数据的迷宫,输出的一条通路为:(1,1,1),(1,2,2),(2,2,2),(3,2,3),(3,1,2),……。
上传时间: 2013-12-16
上传用户:aix008
用多线程同步方法解决读者阅览问题 1) 每个读者进入阅览室后,即时显示“Entered” 及其线程自定义标识,还同时显示阅览室共有几名顾客及其所坐的位置。 2) 至少有10个读者,每人阅览至少3秒钟。 3) 多个读者须共享操作函数代码。 2总的设计思想及系统平台、语言、工具: 设计思想:程序设定的是10个读者和5个座位,对读者进行编号,依次进入阅览室读书,为每一座位列一表目,包括座号和读者号等,读者离开时要登出,即消掉登记的信息。 系统平台:LINUX 语言:C语言 工具:vi编辑器、gcc编译器 操作系统:linux操作系统 调试工具:edit、masm、link、debug. 3数据结构与模块说明(功能与流程图) 数据结构 int count=0 //记录阅览室读者数量 sem_t full //定义阅览室座位信号量 int seat[5] //用数组表示座位 pthread_t reader[10] //定义读者线程 pthread_mutex_t mutex //定义互斥量 3.2功能说明 可以标识读者,随机为读者设置在阅览室的读书时间 可以显示阅览室读者的人数 可以显示读者所坐的位置,座位状态以及列出空座位
标签: 多线程同步
上传时间: 2016-08-10
上传用户:zsjzc
1. 下列说法正确的是 ( ) A. Java语言不区分大小写 B. Java程序以类为基本单位 C. JVM为Java虚拟机JVM的英文缩写 D. 运行Java程序需要先安装JDK 2. 下列说法中错误的是 ( ) A. Java语言是编译执行的 B. Java中使用了多进程技术 C. Java的单行注视以//开头 D. Java语言具有很高的安全性 3. 下面不属于Java语言特点的一项是( ) A. 安全性 B. 分布式 C. 移植性 D. 编译执行 4. 下列语句中,正确的项是 ( ) A . int $e,a,b=10 B. char c,d=’a’ C. float e=0.0d D. double c=0.0f
上传时间: 2017-01-04
上传用户:netwolf
该程序通过DOS 提供了一组对磁盘文件的建立、打开、关闭和读写等操作的功能调用,利用 DOS 和 BIOS 的功能调用,汇编语言可实现对磁盘文件的存取。对磁盘文件的管理采用文件句柄方式。现菜单选择以及处理各种功能键的多种中级功能。实现复制、剪切、粘贴等高级功能,并且制作一个菜单,使用菜单条选择功能,让用户选择演奏的乐曲,实现音阶演奏。实现枪声,界面美观,程序结构化程度高,模块结构合理。 此压缩包包括所以课程设计文档和源代码
上传时间: 2013-12-29
上传用户:偷心的海盗