• 首页>范文 > 范文
  • 怎么写算法

    1.【如何写算法求二叉树中某个结点的深度(大概思路)】

    1,可以用递归方法,2,先根遍历3,递归函数,增加形参,记录当前的根的层.4,找到和结点对应的记录值 .5,返回结点层数伪代码如下:// T结点,L当前层,value,结点值 //返回-1:没有找到,0-n:对应层int get_node_layer(T *node,int value ,int L){int i=-1; if(node) { if(node->value ==value) return L; if(i = get_node_layer(node->left,value ,L+1)!=-1) //查左子树,如找到就返回 return i; / if(i = get_node_layer(node->right,value ,L+1)!=-1)//查右子树,如找到就返回 return i; } return i;}。

    2.这个算法怎么写

    在1583年后的元旦的计算,可直接用一个本人总结的公式: K=A+B+C, K--元旦星期数,(若K>7,则取其除以7以后的余数) A--公元年的后两位数,除以4,将其整数部分再和原两位数相加,将其和除以7,所得余数, B--公元年的前两位数,除以4,得余数b,查出世纪修正数B, b, 0, 1, 2, 3, B, 0, 5, 3, 1, C--闰年修正数,常年为0,闰年为-1, 例:求2004/1/1的星期数, 04/4=1, (1+4)/7=5/7, A=5, 20/4=5, b=0, B=0, C=-1, K=A+B+C=5+0-1=4, 2004/1/1是星期四. 5/23与元旦相差天数为D D=31+29+31+30+22=143 (143+4)/7=21 2004/5/23为星期日.。

    3.如何快速计算方法

    速算法:把被乘数中正在处理的那个数位称为「本位」,而从本位右侧第一位到最末位所表示的数称「后位数」。本位被乘以后,只取乘积的个位数,此即「本个」,而本位的后位数与乘数相乘后要进位的数就是「后进」。

    举例如下:

    (例题) 被乘数首位前补0,列出算式:

    0847536*2=1695072

    乘数为2的进位规律是「2满5进1」

    0*2本个0,后位8,后进1,得1

    8*2本个6,后位4,不进,得6

    4*2本个8,后位7,满5进1,

    8十1得9

    7*2本个4,后位5,满5进1,

    4十1得5

    5*2本个0,后位3不进,得0

    3*2本个6,后位6,满5进1,

    6十1得7

    6*2本个2,无后位,得2

    4.什么叫算法描述啊

    描述算法的方法有多种,常用的有自然语言、结构化流程图、伪代码和PAD图等,其中最普遍的是流程图。

    算法描述 自然语言

    流程图 特定的表示算法的图形符号

    伪语言 包括程序设计语言的三大基本结构及自然语言的一种语言

    类语言 类似高级语言的语言,例如,类PASCAL、类C语言.

    算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

    算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态。一个状态到另一个状态的转移不一定是确定的。随机化算法在内的一些算法,包含了一些随机输入。

    参考:/view/7420.htm

    怎么写算法

    发表评论

    登录后才能评论