算法实验
小奈代
这个作者很懒,什么都没留下…
展开
-
N皇后问题
N皇后在国际象棋中,皇后是最厉害的棋子,可以横走、直走,还可以斜走。棋手马克斯·贝瑟尔 1848 年提出著名的八皇后问题:即在 8 × 8 的棋盘上摆放八个皇后,使其不能互相攻击 —— 即任意两个皇后都不能处于同一行、同一列或同一条斜线上。算法思想:使用回溯法,判断N*N二维数组的每个位置,放入皇后‘Q’,最后将满足条件的二维数组输出。关键算法:int f(int x, int y, char a[][1000]){//判断是否可以放入皇后,可以则返回1(执行),否则返回0(不执行) int原创 2020-12-25 10:51:33 · 248 阅读 · 0 评论 -
实验六( 动态规划算法)
一、实验目的:1.通过动态规划算法的示例程序理解动态规划算法的基本思想;2.运用动态规划算法解决实际问题加深对动态规划算法的理解和运用;二、实验环境:Visual Studio 2013三、实验内容:(写出主要的内容)1. 分析并掌握“最长公共子序列” 问题的动态规划算法求解方法;最长公共子序列问题:若给定序列X={x1,x2,…,xm},则另一序列Z={z1,z2,…,zk},是X的子序列是指存在一个严格递增下标序列{i1,i2,…,ik}使得对于所有j=1,2,…,k有:zj=xij。例原创 2020-12-15 12:39:39 · 898 阅读 · 0 评论 -
实验四(贪心算法)
一、实验目的:理解贪心算法的思想,并能对给定的问题能设计出分治算法予以解决。二、实验环境:Visual Studio 2013三、实验内容:(写出主要的内容)1.最优服务次序问题。问题描述:设有n个顾客同时等待一项服务,顾客i需要的服务时间为ti,(1<=i<=n)。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?(平均等待时间是n个顾客等待服务时间总和除以n)输入:第一行为一个正整数n,表示有n个顾客第二行为n个正整数,表示n个顾客需要的服务时间输出:最小平均等待时原创 2020-11-25 15:07:15 · 1095 阅读 · 0 评论 -
实验三(递归与分治)
一、实验目的:理解递归算法的思想和递归程序的执行过程,并能熟练编写递归程序。掌握分治算法的思想,对给定的问题能设计出分治算法予以解决。三、实验内容:(写出主要的内容)1. Fibonacci数列无穷数列1,1,2,3,5,8,13,21,34,55,……,称为Fibonacci数列。它可以递归地定义为:第n个Fibonacci数可递归地计算如下:int fibonacci(int n){if (n <= 1) return 1;return fibonacci(n-1)+fib原创 2020-11-24 17:11:46 · 377 阅读 · 0 评论 -
实验二(枚举与递推)
枚举与递推一、实验目的:理解枚举法的思想及程序的执行过程;理解递推算法的思想;能较熟练地编写枚举、递推程序,对给定的问题能设计出相应算法予以解决。三、实验内容:(写出主要的内容)1.由0到4五个数字,组成5位数,每个数字用一次,但十位和百位不能为3(当然万位不能为0),输出所有可能的五位数。代码: #include <iostream>using namespace std;int s(int n,int *a, int *b){ int i, j, a1[5], b1[原创 2020-11-18 10:56:24 · 343 阅读 · 0 评论 -
实验一、排序算法(冒泡排序、选择排序、 希尔排序、快速排序)
排序算法效率比较编程实现以下几种不同的排序算法(以升序为例):冒泡排序、选择排序、 希尔排序、快速排序,比较不同的排序过程的运行时间。#include <iostream>#include<time.h>using namespace std;#define N 100000void Bubble_sort(int *b){//冒泡排序 int i, j, t; for (i = 0; i<N- 1; i++) for (j = 0; j<N - i原创 2020-11-16 20:06:29 · 570 阅读 · 0 评论 -
实验五(回溯法)
回溯法一、实验目的:1、通过回溯法的示例程序理解回溯法的基本思想;2、运用回溯法解决实际问题进一步加深对回溯法的理解和运用;二、实验环境:Visual Studio 2013三、实验内容:(写出主要的内容)四、示例程序:符号三角形问题符号三角问题:下面都是“-”。 下图是由14个“+”和14个“-”组成的符号三角形。2个同号下面都是“+”,2个异号下面都是“-”。+ + - + - + + + - - - - + - + +原创 2020-12-08 18:39:29 · 485 阅读 · 0 评论