- 博客(24)
- 收藏
- 关注
转载 mfc 入门 vc
转https://blog.csdn.net/wang18323834864/article/details/78621633 以下是我从其他网站中学的内容,后有相应的网站学习链接地址,可供学习1.选择菜单项File->New->Project,弹出“New Project”对话框。 2.左侧面板中Installed Templated的Visual C++下选择...
2018-07-26 11:50:29 271
原创 输出以二叉树表示的算术表达式
编写程序,输出以二叉树表示的算术表达式,若该表达式中含有括号,则在输出时应添上。按先序输入一行字符,其中#表示取消建立子树结点,即所有叶子节点均为#。输出该二叉树所表示的算术表达式(若表达式中含有括号,则在输出时应添上)。*+a(###b#)##c##(a+b)*c#include <iostream>#include <stdlib.h>#include <cs...
2018-05-03 22:44:51 1173
原创 计算二叉树叶子结点数目
二叉树按照二叉链表方式存储,编写程序,计算二叉树中叶子结点的数目。按先序输入二叉树各结点,其中#表示取消建立子树结点。输出二叉树中叶子节点的数目。ABD##EH###CF#I##G##4#include <iostream>#include <stdlib.h>#include <cstdio>#define DataType charusing na...
2018-05-03 22:44:39 10141
原创 建立二叉树的二叉链表存储结构
如果用大写字母标识二叉树结点,则一颗二叉树可以用符合下面语法图的字符序列表示。试编写递归程序,由这种形式的字符序列,建立相应的二叉树的二叉链表存储结构(附图见《严蔚敏:数据结构题集(C语言版)》第45页6.70)。输入如图所示的字符序列。建立相应二叉树的二成叉链表存储结构,并先序遍历输出。A(B(#,D),C(E(#,F),#))AB#DCE#F##include <iostream>...
2018-05-03 22:44:31 4862
翻译 求广义表深度
试按表头、表尾的分析方法编写求广义表的深度的递归程序。输入一串以‘(’开始,以‘(’结束的字符串,并且输入的左右括号必须匹配,如:(),(())……分别输出按表头、表尾分析方法求广义表深度的结果,每个结果占一行。((a,b,(c,(d,e),f)),g)44#include <stdio.h> #include <stdlib.h> struct Node { ...
2018-05-03 22:44:08 1186 1
原创 以十字链表为存储结构实现矩阵相加
以十字链表为存储结构,编写程序,将稀疏矩阵B加到稀疏矩阵A上。第一行输入四个正整数,分别为稀疏矩阵A和稀疏矩阵B的行数m、列数n、稀疏矩阵A的非零元素个数t1和稀疏矩阵B的非零元素个数t2。接下来的t1+t2行三元组表示,其中第一个元素表示非零元素所在的行值,第二个元素表示非零元素所在的列值,第三个元素表示非零元素的值。输出相加后的矩阵三元组。3 4 3 21 1 11 3 12 2 21 2 1...
2018-05-03 22:43:55 1730 1
原创 以三元组表为存储结构实现矩阵相加
假设稀疏矩阵A和B均以三元组表作为存储结构。试编写矩阵相加的程序,另设三元组表C存放结果矩阵。矩阵大小为m行n列(0<m,n<100)第一行输入t1,t2(0<t1,t2<100) ,t1和t2分别是矩阵A和B中非零元素的个数,后面t1+t2行分别输入A和B中的元素,用三元组表示。输出三元组表C。3 31 2 33 2 13 4 21 1 43 2 53 4 11 1 41...
2018-05-03 22:43:46 2430
原创 循环右移
编写程序,将一维数组A(下标从1开始)中的元素循环右移k位,要求只用一个元素大小的附加存储。第一行输入一维数组A的长度n和循环位移位数k(0<n<100;0<k<100),用空格分开。第二行输入n个元素。输出循环右移k位后的一维数组。6 31 2 3 4 5 6 4 5 6 1 2 3#include <stdio.h>#include <stdlib....
2018-05-03 22:43:36 670
原创 k阶斐波那契数列
试利用循环队列编写k阶斐波那契数列中前n+1项 (f(0),f(1),…,f(n))的程序,要求满足:f(n)<=max而f(n+1)>max,其中max为某个约定的常数。(注意:本题所用循环队列的容量仅为k,则在程序执行结束时,留在循环队列中的元素应是所求k阶斐波那契序列中的最后k项 f(n-k+1),…,f(n))。输入常数max,阶数k,用空格隔开。输出k阶斐波那契数列中的最后k...
2018-05-03 22:43:19 1184
原创 循环队列
假设将循环队列定义为:以域变量rear和length分别指示循环队列中队尾元素的位置和内含元素的个数。编写相应的入队列和出队列的程序,并判断循环队列是否队满(在出队列的算法中要返回队头元素)。假设队列数组为Queue[MAXSIZE],第一行输入队列大小N,第二行开始输入若干入队元素,队满时,停止入队。第三行输入出队元素。输出入队出队操作后的循环队列,并返回出队元素的队头元素。53 4 6 2 7...
2018-05-03 22:43:10 1852
原创 逆波兰式
假设表达式由单字母变量和双目四则运算算符构成。试编写程序,将一个通常书写形式且书写正确的表达式转换为逆波兰式。输入由单字母变量和双目四则运算算符构成的表达式。输出其逆波兰式。(a+b)*cab+c*#include <stdio.h>#include <stdlib.h>#define MAXSIZE 100typedef struct{ char *ba...
2018-05-03 22:43:01 2597 2
原创 单链表的删除
已知A,B和C为三个非递减有序的线性表,均以单链表作为存储结构。现要求对A表作如下操作:删去那些既在B表中出现又在C表中出现的元素。试对单链表编写实现上述操作的算法,并释放A表中的无用结点空间。第一行输入3个正整数m,n,p(m,n,p<=100),用空格分开,表示三个线性表中的元素个数,其后3行依次输入A,B,C表中的元素。输出实现上述操作后的A表。8 5 61 2 3 4 5 6 6 7...
2018-05-03 22:42:49 1067
原创 单链表的归并
假设两个按元素值非递减有序排列的线性表A和B,均以单链表作为存储结构,试编写程序,将A表和B表归并成一个按元素值非递增有序排列的线性表C,并要求利用原表(即A表和B表的)结点空间存放表C。第一行输入两个正整数m,n(m,n<=100),用空格分开,表示线性表A和B中元素个数,其后两行分别输入单链表A和B。输出单链表C。5 51 3 7 12 162 6 7 13 2020 16 13 12 ...
2018-05-03 22:42:37 4456 2
原创 稀疏矩阵的乘法
计算两个稀疏矩阵的乘法首先输入第一个矩阵的行数和列数,再输入该矩阵的三元组形式,以0 0 0结束。然后输入第二个矩阵的行数和列数,再输入该矩阵的三元组形式,以0 0 0结束。输出相加后的矩阵三元组。3 31 1 12 2 22 3 43 1 -40 0 03 31 3 -22 3 -53 1 83 2 -60 0 01 3 -22 1 322 2 -242 3 -103 3 8#include&l...
2018-05-03 22:42:19 2307
原创 稀疏矩阵加法,用十字链表实现C=A+B
输入两个稀疏矩阵,输出它们相加的结果。第一行输入四个正整数,分别是两个矩阵的行m、列n、第一个矩阵的非零元素的个数t1和第二个矩阵的非零元素的个数t2。接下来的t1+t2行是三元组,分别是第一个矩阵的数据和第二个矩阵的数据。三元组的第一个元素表示行号,第二个元素表示列号,第三个元素是该项的值。输出相加后的矩阵三元组。3 4 3 21 1 11 3 12 2 21 2 12 2 31 1 11 2 ...
2018-05-03 22:41:48 4750
原创 稀疏矩阵加法,实现C=A+B
输入两个稀疏矩阵,输出它们相加的结果。第一行输入四个正整数,分别是两个矩阵的行m、列n、第一个矩阵的非零元素的个数t1和第二个矩阵的非零元素的个数t2。接下来的t1+t2行是三元组,分别是第一个矩阵的数据和第二个矩阵的数据。三元组的第一个元素表示行号,第二个元素表示列号,第三个元素是该项的值。输出相加后的矩阵三元组。3 4 3 21 1 11 3 12 2 21 2 12 2 31 1 11 2 ...
2018-05-03 22:41:37 14270 3
原创 稀疏矩阵转置
输出稀疏矩阵的转置矩阵。(行列均不大于20)第一行输入两个正整数n和m,分别表示矩阵的行数和列数,然后输入矩阵三元组,最后输入(0 0 0)表示结束输入。转置后的矩阵。4 41 1 12 1 23 2 30 0 01 1 11 2 22 3 3#include <stdio.h>#include <stdlib.h>#define MAXSIZE 10000typed...
2018-05-03 22:41:27 586 1
原创 高精度计算PI值
限制使用双向链表作存储结构,请根据用户输入的一个整数(该整数表示精确到小数点后的位数,可能要求精确到小数点后500位),高精度计算PI值。可以利用反三角函数幂级展开式来进行计算。输入的一个正整数n输出PI的值,精确到小数点后n位,最后输出一个回车。53.14159#include <stdio.h>#include <stdlib.h>#define MAX 1000typ...
2018-05-03 22:41:13 2148
原创 顺序表的删除
已知A,B和C为三个非递减有序的线性表,现要求对A表作如下操作:删去那些既在B表中出现又在C表中出现的元素。试对顺序表编写实现上述操作的算法。第一行输入3个正整数m,n,p(m,n,p<=100),用空格分开,分别表示三个线性表中的元素个数,其后3行依次输入A,B,C表中的元素。输出实现上述操作后的A表。8 5 61 2 3 4 5 6 6 72 3 5 9 122 4 5 6 12 131...
2018-05-03 22:40:47 660
原创 线性表的就地逆置
试分别以不同的存储结构实现线性表的就地逆置算法,即在原表的存储空间将线性表(a1,a2,…,an)逆置为(an,an-1,…,a1)。(1) 以一维数组作存储结构。(2) 以单链表作存储结构。第一行输入线性表元素个数elenum;(0<elenum<1000)第二行输入elenum个数,作为线性表中的元素(a1,a2,…,an)。分两行分别输出要求(1)和要求(2)的线性表逆置结果(a...
2018-05-03 22:40:37 5586
原创 LOCATE操作
设有一个双向循环链表,每个结点中除有pre,data和next三个域外,还增设了一个访问频度域freq。在链表被起用之前,频度域freq的值均初始化为零,而每当对链表进行一次LOCATE(L,x)的操作后,被访问的结点(即元素值等于x的结点)中的频度域freq的值便增1,同时调整链表中结点之间的次序,使其按访问频度非递增的次序排列,以便始终保持被频繁访问的结点总是靠近表头结点。试编写符合上述要求的...
2018-05-03 22:40:18 2128 1
翻译 哈夫曼编/译码器
写一个哈夫曼码的编/译码系统,要求能对要传输的报文进行编码和解码。构造哈夫曼树时,权值小的放左子树,权值大的放右子树,编码时右子树编码为1,左子树编码为0.输入表示字符集大小为n(n <= 100)的正整数,以及n个字符和n个权值(正整数,值越大表示该字符出现的概率越大);输入串长小于或等于100的目标报文。经过编码后的二进制码,占一行;以及对应解码后的报文,占一行;最后输出一个回车符5 a...
2018-05-03 22:39:28 6864
原创 建立二叉树的二叉链表
已知一棵二叉树的前序序列和中序序列分别存于两个一维数组中,试编写算法建立该二叉树的二叉链表。分两行分别输入一棵二叉树的前序序列和中序序列。输出该二叉树的后序序列。ABDFGCEHBFDGACEHFGDBHECA#include <iostream>#include <cstring>#include <stdlib.h>using namespace st...
2018-05-03 22:39:06 3479
原创 顺序表的插入运算
已知顺序表L递增有序,编写程序,将X插入到线性表的适当位置上,以保持线性表的有序性。第一行输入顺序表元素个数elenum;(0<elenum<1000)第二行输入顺序表L;第三行输入插入值X。输出插入X后的有序顺序表72 3 4 5 6 7 811 2 3 4 5 6 7 8#include <stdio.h>#include <stdlib.h>int mai...
2018-05-03 22:38:49 963
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人