递归与分治策略应用基础.docVIP

  • 15
  • 0
  • 约3.35千字
  • 约 11页
  • 2020-10-07 发布于浙江
  • 举报
《算法设计与分析》实验报告 实验一 递归与分治策略应用基础 学号: 姓名: 班级: 实验目的 1、熟悉递归的概念和分治法。 2、对递归与分治算法时间空间复杂度分析,以及问题复杂性分析方法。递归与分治策略的问题类型,并能设计相应的分治策略算法。 实验内容 任务: 以下题目要求应用递归与分治策略设计解决方案,本次实验成绩按百分制计,完成各小题的得分如下,每小题要求算法描述准确且程序运行正确。 求n个元素的全排。(30分) 算法分析:用递归的方法,先将n个数分成两个部分,然后将两个部分交换位子,然后再将这两个部分继续再分成四个部分,然后再将每个部分进行交换,然后就重复刚才的过程,直到不能再分为止,在这个过程中所产生的所有结果就是我们要求的全排列。 代码实现: #include stdio.h int n = 0; void swap(int *a, int *b) { int m; m = *a; *a = *b; *b = m; } void perm(int list[], int k, int m) { int i; if(k 2) { for(i = 0; i = 2; i++) printf(%d , list[i]); printf(\n); n++;

文档评论(0)

1亿VIP精品文档

相关文档