一个好的程序应该从哪几方面评价

一个好的程序应该从哪几方面评价,第1张

1、符合实际需求,能解决实际问题;

2、尽可能控制程序的漏洞,特别是没有严重的漏洞。

3、界面友好、移植方便,便以 *** 作、升级和管理;

4、尽可能占用少的系统资源;

5、不与其它程序相冲突;

时空交换,他比你要少用一些存储,但多一些步骤。

你们老师写的也不怎么样。n个数中移动m个的,应该只需要n+m个空间移动n+m次或0空间交换n次。他写成了n*m次移动,你用了2n的空间。

如果你有13个空间,可以直接向后移动三个元素再重新插入。

次数等于n+m次。

#define N 10

#define M 3

for (int i = 0i <N - M++i)

a[N + M - 1 + i] = a[N - 1 - i]

for (int i = 0i <M++i)

a[M - 1 - i] = a[N + M - 1 + i]

如果没有空间,哪也是整体交换,只交换3+3+4次,相当于int(n / m) * m + int(m / (n mod m))*(n mod m)次等于n次。把q位上的n个数移动到p位上。

void swapall(int a[], int p, int q, int n)

{

for (int i = 0i <ni ++) {

int x = a[q + i]

a[q + i] = a[p + i]

a[p + i] = a[q + i]

}

}

/* p <q, n >1 */

void move(int a[], int p, int q, int n) {

while ( p + n <q) {

swapall(a, p, q, n)

p = p + n

}

while ( q - p <n) {

int m = q - p

swapall (a, p, q, m)

n = n - m

p = q

q = p + m

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11105298.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存