递归算法题1
一个整数,大于0,不用循环和本地变量,按照n,2n,4n,8n 的顺序递增,当
值大于5000 时,把值按照指定顺序输出来。
B.Kruskal算法:(贪心)
按权值递增顺序删去图中的边,若不形成回路则将此边加入最小生成树。
function find(v:integer):integer; {返回顶点v所在的集合}
var i:integer;
面试题:二维数组中的查找
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
题目来源:1月7日下午江苏省南京市面试考题
试讲题目
1.题目:认识DO-LOOP语句
2.内容:
利用For-Next循环,可以控制计算机按指定的次数执行循环体中的代码。对于事先不知道循环次数的问题,可以在程序中使用另一种类型的循环结构一DO-LOOP循环。例如,在计算机自然数的累加和S=1+2+3+...时,要找出使S不大于1OOOO的最大自然数n,可以按以下步骤编一个VB程序。
①新建一个标准EXE工程。
②在窗体上绘制一个名为Labell的标签和一个名为Commandl的命令按钮,然后打开“代码”窗口,输人下面的代码。
Private Sub Commandl Click()
Dim n As Integer
Dim s As Long
n=0
s=O
Do Whiles<=10000
n=n+I
s=s+n
LOOP
Labell.Caption=n-1
End Sub
③测试程序,窗体中显示的值为 。
④保存窗体文件和工程文件并生成可执行文件。
在这个程序中,第六行是一个DO语句,其中的S<=10000是一个条件表达式。第九行是一个LOOP语句。习惯上,把DO语句和LOOP语句构成的程序结构,叫做DO-LOOP循环。嵌在DO语句和LOOP语句之间的代码是O-LOOP循环体。
计算机遇到DO语句时,先判断条件表达式是否成立。如果成立,就执行循环体规定的操作;否则,转到LOOP语句下面去执行后续的代码。每完成一次循环体规定的操作后,由LOOP语句指挥计算机返回DO语句,再进行下一次判断以及相应的操作。O-LOOP循环的流程如右图所示。
一般说来,D0-Loop循环的格式是:
Do While条件表达式
循环体
LOOP
3.基本要求:
(1)应有与教学主要内容相对应的适当板书;
(2)教学过程中应有与学生的交流讨论;
(3)试讲时间约10分钟。
答辩题目
1.如何评价学生的作品?
2.简述适合采用讲授法的三种情况?
A.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
B.do-while循环中,根据情况可以省略while
C.在do-while循环体中,是先执行一次循环,再进行判断
D.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句