- 博客(5)
- 收藏
- 关注
原创 作业 五皇后问题
皇后问题主要运用了回溯算法。而回溯算了解决问题的主要过程是建立一个状态树,对每一个种情况进行取舍。皇后问题也是如此,对每格是否能放进行取舍。代码#include <stdio.h>#include <malloc.h>#include <math.h>bool place(int* paraSolution, int paraT) { int j; for (j = 1; j < paraT; j++) { if ((abs(p
2022-05-26 22:13:50 1581
原创 二叉树的构造和遍历-作业
二叉树1.定义二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。二叉树特点是每个节点最多只能有两棵子树,且有左右之分 。二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成,是有序树。当集合为空时,称该二叉树为空二叉树。在二叉树中,一个元素也称作一个节点。2.构造typedef str...
2022-05-24 21:59:15 82
原创 矩阵乘法和压缩矩阵
1.矩阵乘法#include<iostream>using namespace std;int main() { int n, m, k; int a[100][100], b[100][100], c[100][100] = { 0 }; cin >> n >> m >> k; for (int i = 0;i < n;i++) { for (int j = 0;j < m;j++) { cin >> a[
2022-05-19 22:41:46 202
原创 汉诺塔和递归的作业
1.递归递归就是把一个大问题不断拆分为子问题, 直到子问题可以直接解决的地步构成递归需具备的条件:1. 子问题须与原始问题为同样的事,且更为简单;2. 不能无限制地调用本身,须有个出口,化简为非递归状况处理。代码#include <stdio.h>/** * Recursive addition. */int addTo(int paraN) { int tempSum; printf("entering addTo(%d)\r\n", paraN);
2022-05-12 22:13:43 204 1
原创 第四次作业
1.栈栈限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻成为新的栈顶元素。 在这个过程中 指针一开始指向-1,在指针加一后再放入元素,这个过程为入栈。出栈相同先指针减一再出元素。代码#include <stdio.h>#include <malloc.h>#.
2022-05-10 21:13:10 74
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人