- 博客(25)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 c++指针与引用
#include "iostream"using namespace std;#include "assert.h"void Swap(int *ap,int *bp){ assert(ap == NULL || bp == NULL);//判断指针是否为空 int tmp = *ap; *ap = *bp; *bp = tmp;}int *funa(){ int a = 10; return &a;//错误,函数结束,空间释放了,下一...
2022-05-14 13:57:23 262
原创 linux基础命令:
1.pwd:显示当前所在位置的绝对路径 cd 路径:切换当前工作位置 cd . :退回到当前位置 cd .. :退回到上一层 ls:默认显示当前位置当前目录下的内容 clear:清屏(相当于翻页) cd ~:直接进入到当前用户的家目录 cd -:切换到上一次所在位置,在两个位置之间来回切换; mkdir 文件名:创建一个目录(文件夹) touch 文件名:创建一个普通文件 2.文件类型 目录文件:文件夹 用'd'表示 管道文件:用于进程间通信的一种文件(
2022-05-03 21:02:55 169
原创 c语言题解
1.假如我国国民生产总值的年增长率为7% , 计算10年后我国国民生产总值与现在相比增长多少百分比 。 计算公式为p = (1+ r )^n. 其中r 为年增长率, n 为年数, p 为与现在相比的倍数 。2.存款利息的计算有 10000元,想存 5 年,可按以下 5 种办法存 :(1) 一次存5年期。(2) 先存2年期,到期后将本息再存3年期。(3) 先存3年期,到期后将本息再存2年期 。(4) 存1年期,到期后将本息再存1年期,连续存5次 。(5) 存活期存款。活期利息每一季度结...
2022-03-27 15:20:31 2025
原创 整数划分问题
#include<stdio.h>//将最大加数n1不大于m的划分的个数记作q(n,m)int q(int n,int m){ if((n<1)||(m<1)) return 0; if((n==1)||(m==1)) return 1; if(n<m) return q(n,n); if(n==m) return q(n,m-1)+1; return q(n,m-1)+q(...
2022-03-05 10:04:39 175
原创 投资问题算法
#include <iostream>#include <math.h>using namespace std;const int M = 5;const int N = 6;int maxprofit(int dp[M][N],int f[M][N],int money,int number){ for (int i=1;i<=number;i++) { for (int j=0;j<=money;j++) { dp[i][j]=0;.
2022-03-05 10:00:31 191
原创 图像压缩问题
#include <stdio.h>#include <stdlib.h>#include <math.h>#define MAX 20int max_bit(int p[],int start,int end);void compress(int s[],int p[],int b[],int l[],int n);void back_tack(int s[],int b[],int l[],int n);int seg;int main().
2022-03-05 09:58:43 206
原创 装载问题回溯法
#include <iostream>using namespace std;//定义全局变量int x[100]; //表示当前解,0代不表放,1代表放int bestx[100];//表示最优解int w[100];// 表示集装箱i的重量int bestw;//当前最优装载重量int r;//剩余集装箱的重量int n; //集装箱的数量int c1;//轮船1的载重量int c2;//轮船2的载重量int cw;//当前轮船1的载重量void ShuRu(.
2022-03-05 09:56:23 540
原创 最优装载问题
#include<stdio.h>struct box{//保存箱子重量及序号 int no; int weight;}z[100];int main(){ int n,m,i,j,sum=0,cnt=0,load[100]; printf("请输入箱子个数:"); scanf("%d",&n); printf("请输入集装箱重量限制:"); scanf("%d",&m); printf("请输入各箱子重量:"); for(i=.
2022-03-05 09:54:57 174
原创 最长公共子序列
#include<stdio.h>#define m 7#define n 6int c[m + 1][n + 1];int b[m+1][n+1];void LCS_LENGTH(char *x,char *y){ int i,j; for (i = 0; i <= m; i++) c[i][0] = 0; for (j = 0; j <= n; j++) c[0][j] = 0;...
2022-03-04 12:40:27 173
原创 快速排序问题
/*分析(从小到大):1. 首先取出一个初始值key,一般取第一个元素2. 从后往前遍历,如果数组中的数据小于了key,那么就将从前往后未比较过的第一个位置即fisrt位置替换为该数据3. 然后从前往后遍历,如果数组中的数据大于了key,那么就将从后往前的第一个比较过数据位置替换4. 直到左右两边的位置重合,说明key就找到了正确的位置,每次循环就能找到一个数的正确位置5. 然后将key左右两边的数据分为两组,递归调用自己。*/#include <stdio.h>void qu
2022-03-04 12:38:29 133
原创 矩阵链问题
#include<stdio.h>#include<stdlib.h>#define maxSize 1000#define maxNum 100000000int dp[maxSize][maxSize];//从i到j相乘所需要的最少计算次数int memeo[maxSize][maxSize];//储存从i到j在哪里截断void find(int *numSequence,int n){ int i,j,k,l,tmp; for(i=0;i<...
2022-03-04 12:35:53 95
原创 合并排序问题
#include"stdio.h"/*我们用 i 来表示{1,4,6,8}中的第一个元素1;用 j 来表示{2,7,9,12}中的第一个元素2;用 k 来表示新数组也就是待排序的数组的第一个元素;判断 i 和 j的大小;如果i<j,那么就让k=i;i++,k++;如果i>j,那么就让k=j;j++,k++;最后,一定会有一个数组里面留下元素,{2,7,9,12}中会有9和12留下,最后再把9和12放在待排序的数组里面所以如果有一个数组是{1,4,6,8,2,7,9,12};.
2022-03-04 12:33:45 100
原创 汉诺塔算法
#include <stdio.h>#include <string.h>/*算法思路:1将 n-1个盘子先放到B座位上 2.将A座上地剩下的一个盘移动到C盘上 3、将n-1个盘从B座移动到C座上 递归算法的实质:是把问题转化为规模缩小了的同类问题的子问题。然后递归调用函数(或过程)来表示问题递归算法解决问题的特点: (1) 递归就是在过程或函数里调用自身。 (2) 在使用递归策略时,必须有一个明确的...
2022-03-04 12:31:09 109
原创 二分查找,/非递归:斐波那契数列求第n项
#include "stdio.h"#include <string.h>//递归:二分查找int BinaryFind(int* arr, int left, int right, int value){ int pos = -1; if(arr == NULL || left < 0 || right < left ) { return pos; } else { int mid ...
2022-03-04 12:28:56 136
原创 二叉排序树
#include <stdio.h>#include <stdlib.h> typedef int KeyType; // 定义节点关键码的类型为整型typedef struct node // 二叉排序树的结构体{ KeyType key; // 树节点的关键码 struct node *lchild, *rchild; // 左右孩子指针} node, *BiSortTree; void CreateBST(B.
2022-03-04 12:26:33 428
原创 大整数乘法
#include <stdio.h>#include <stdlib.h>#include <string.h>/*用两个char型数组a[100],b[100]分别存放两个整数。arr1为大数a的数字型,arr2为大数b的数字型,即数组每一位存放大数的每一位,arr3存放乘积。当an…a2a1与bm…b1相乘时,单步执行结果为b1a1 b1a2 … 共有mn项。arr3[i+j]+=arr2[i]*arr1[j]当将mn个值放入arr3中时,再考虑
2022-03-04 12:24:13 102
原创 8皇后回溯
#include <stdio.h>int Queenes[8]={0},Counts=0;int Check(int line,int list){ //遍历该行之前的所有行 for (int index=0; index<line; index++) { //挨个取出前面行中皇后所在位置的列坐标 int data=Queenes[index]; //如果在同一列,该位置不能放 if (list==da.
2022-03-04 12:21:30 406
原创 0-1背包问题
#include<stdio.h>#include<stdlib.h>int V[100][100];//前i个物品装入容量为j的背包中获得的最大价值int max(int a,int b){ if(a>=b) return a; else return b;}int KnapSack(int n,int weight[],int value[],int C){ //填表,其中第一行和第一列全为0,即 V(i,0)...
2022-03-04 12:18:20 79
原创 栈的基本操作
实验要求:1.编写实现顺序栈的基本算法(初始化、入栈、出栈、取栈顶元素、遍历、置空等)的函数,并在此基础上设计一个主程序完成如下功能:⑴初始化顺序栈S(数据类型任选);⑵入栈;⑶出栈;⑷求栈的元素个数;⑸取栈顶元素;⑹遍历输出顺序栈S;⑺置空栈。2.编写实现顺序栈的基本算法(初始化、入栈、出栈、取栈顶元素、遍历、置空等)的函数,并在此基础上设计一个主程序完成如下功能:⑴初始化链栈S(数据类型任选);...
2021-11-14 21:48:50 3545
原创 设计一图书信息管理系统,实现以下功能:系统以菜单方式工作,图书信息录入功能(图书信息用文件保存) ;
问题描述设计一图书信息管理系统,实现以下功能:系统以菜单方式工作,图书信息录入功能(图书信息用文件保存) ;图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等;图书信息浏览功能(输出所有图书信息);查询和排序功能:按书名查询(显示所有同名的书),按作者名查询(所有该作者的书); 图书信息的删除与修改。基本要求(1)使用面向对象编程思想编写开发过程中需要用到的类,比如:图书类(图书信息)、日期类 、管理类(实现对图书信息的管理)。...
2021-10-26 08:00:00 13590 3
原创 单链表的基本操作
二、实验内容:1.建立单链表。2.在单链表上实现插入、删除和查找等操作。三、实验要求:编写实现单链表的基本算法(初始化、查找、插入、删除等)的函数,并在此基础上设计一个主程序完成如下功能:初始化单链表H,类型自选;⑵分别采用头插法和尾插法建立单链表H,如(a,b,c,d,c);⑶输出单链表H的长度;⑷输出单链表H的第i个元素,如输出单链表H的第3个元素;⑸输出给定元素的位置,如输出元素a的位置;⑹在第i个元素前插入给定元素,如在第4个...
2021-10-24 20:44:52 5605
原创 顺序表的基本操作
一、实验目的:1、复习C语言程序设计中的知识。2、掌握线性表的顺序存储结构的表示和实现方法。3、掌握顺序表基本操作的算法实现。二、实验内容:1.建立顺序表。2.在顺序表上实现插入、删除和查找等操作。三、实验要求:1、编写实现顺序表的基本算法(初始化、查找、插入、删除等)的函数,并在此基础上设计一个主程序完成如下功能:⑴初始化一个顺序表L,数据元素类型可任选;⑵建立顺序表L,要求数据元素至少10个;⑶输出顺序表L的长度;⑷按位置查找:输出顺序表L的第i个
2021-10-24 20:33:50 5079
动态查找利用二叉排序树完成动态查找表
2022-03-04
c++文件无法写入,运行时一直黑屏
2021-06-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人