![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
HarvestWu
电子科技大学硕士在读
展开
-
逻辑表达式等价判断
题目要求:给出两个c语言中的逻辑表达式,判断两个表达式是否完全一样(对变量所有的取值,两个表达式的值一样),表达式中的变量可由字母a-z中的任何一个表示,运算符由'|'(或),'&'(与),'^'(异或),'~'(非)组成,表达式中还可能有圆括号,各运算符的优先级跟c语言一样。输入每两行一组,分别为两个表达式(长度不大于100).如果两个表达式一样,则输出Equivalent,否则输出原创 2017-09-19 23:17:30 · 7057 阅读 · 0 评论 -
C++ 约瑟夫斯问题
需要注意:循环移位没有数位丢失循环左移时,左端移出位填充右端。循环右移时,右端移出位填充左端。//#include <bits/stdc++.h>#define MaxSize 10000using namespace std;/** Created by HarvestWu on 2018/07/05.*///获取n的二进制位数int util(int n){ i...原创 2018-07-05 18:57:26 · 890 阅读 · 0 评论 -
C++ 数组三重查找
算法思想同二分查找#include <bits/stdc++.h>#define MaxSize 10000using namespace std;/** Created by HarvestWu on 2018/07/05.*///数组三重查找int find(int A[], int n,int k){ int l, lmid, rmid, r; l = 0;...原创 2018-07-05 18:58:23 · 2138 阅读 · 0 评论 -
C++ 判定值为x的结点的层号
#include <bits/stdc++.h>#define MaxSize 100/* * Created by HarvestWu on 2018/07/18. */using namespace std;typedef char ElemType;//定义二叉树结构typedef struct BTNode{ ElemType data; ...原创 2018-07-18 18:13:39 · 367 阅读 · 0 评论 -
C++ 满二叉树先序序列数组获得后续序列
方法思想:除去当前序列的第一个元素e,将剩下的分成前后相等的两半,分别为当前元素e的左右子树。将e移到整个序列的末尾,再递归处理子树即可。#include <bits/stdc++.h>#define MaxSize 100/* * Created by HarvestWu on 2018/07/18. */using namespace std;typedef c...原创 2018-07-18 18:35:36 · 915 阅读 · 0 评论 -
C++ 二叉树双序遍历
二叉树双序遍历:即访问结点n,然后遍历左子树;再次访问结点n,递归遍历右子树。#include <bits/stdc++.h>#define MaxSize 100/* * Created by HarvestWu on 2018/07/18. */using namespace std;typedef char ElemType;//定义二叉树结构typed...原创 2018-07-18 18:49:35 · 4478 阅读 · 1 评论 -
C++ 判断图两顶点间是否有路径
#include <bits/stdc++.h>#define MaxSize 100/** Created by HarvestWu on 2018/07/18.*/using namespace std;typedef int ElemType;//边表typedef struct ArcNode{ int adjvex; ...原创 2018-07-18 19:08:12 · 5428 阅读 · 1 评论 -
C++ 链表直接插入排序
#include<bits/stdc++.h>/** Created by HarvestWu on 2018/07/24.*/using namespace std;typedef int ElemType;typedef int Status;typedef struct LNode{ ElemType data; struct LNode *next...原创 2018-07-24 20:13:51 · 1710 阅读 · 0 评论 -
C++ 二叉排序树
#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])/** Created by HarvestWu on 2018/07/24.*/using namespace std;//定义二叉树结构typedef struct B...原创 2018-07-24 21:02:56 · 298 阅读 · 0 评论 -
C++ 判断二叉排序树
#include <bits/stdc++.h>#define MaxSize 100#define MIN -10000#define TRUE 1#define FALSE 0#define ArrayLen(array) sizeof(array)/sizeof(array[0])/** Created by HarvestWu on 2018/07/25.*/...原创 2018-07-25 20:29:31 · 519 阅读 · 0 评论 -
C++ 图的邻接表转邻接矩阵表示
#include <bits/stdc++.h>#define MaxSize 100/** Created by HarvestWu on 2018/07/20.*/using namespace std;typedef int ElemType;//邻接矩阵顶点类型typedef struct VertexType{ int no; //顶点编号 ch...原创 2018-07-20 20:37:35 · 971 阅读 · 0 评论 -
C++ 重排数组,负值在所有非负值前
#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])#define Type template<class T>/** Created by HarvestWu on 2018/07/22.*/using names...原创 2018-07-22 20:12:41 · 847 阅读 · 2 评论 -
C++ 对n个互不相同且均在0—n-1整数排序
#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])#define Type template<class T>/** Created by HarvestWu on 2018/07/22.*/using names...原创 2018-07-22 20:21:42 · 500 阅读 · 0 评论 -
C++ 排序算法
#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])#define TypeName template<class T>/** Created by HarvestWu on 2018/07/22.*/using n...原创 2018-07-22 20:24:10 · 313 阅读 · 0 评论 -
C++ 计数排序
要求排序的关键字互不相同。#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])#define TypeName template<class T>/** Created by HarvestWu on 2018/07...原创 2018-07-22 21:32:39 · 352 阅读 · 0 评论 -
二叉树输出根结点到每个叶结点的路径
#include<cstdio>#include<iostream>#include<cstdlib>#include<cstring>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])/** Created by HarvestWu on...原创 2018-10-16 20:36:32 · 2309 阅读 · 0 评论 -
求等长升序序列A、B的中位数
分别求A、B序列的中位数a,b;若a=b;则a或b为所求中位数,算法结束; 若a<b;则舍弃序列A中较小一半,舍弃序列B中较大一半;(注:需保证舍弃长度相等,代码分奇偶处理即保证等长) 若a>b;则舍弃序列A中较大一半,舍弃序列B中较小一半;(注:需保证舍弃长度相等,代码分奇偶处理即保证等长) 在保留的两个序列中,重复1、2、3步,直到两个序列均只含一个数为止,返回较小者为中...原创 2018-11-11 16:42:17 · 390 阅读 · 0 评论 -
求整数序列主元素
定义一个整数序列的主元素为出现次数超过序列元素个数一半的元素。#include <bits/stdc++.h>#define ArrayLen(array) sizeof(array)/sizeof(array[0])/** Created by HarvestWu on 2018/11/11.*/using namespace std;int Majority(i...原创 2018-11-11 16:59:00 · 1078 阅读 · 0 评论 -
C++ 双向冒泡排序算法
#include <bits/stdc++.h>#define MaxSize 100#define ArrayLen(array) sizeof(array)/sizeof(array[0])#define TypeName template<class T>/** Created by HarvestWu on 2018/07/23.*/using n...原创 2018-07-23 20:24:33 · 2095 阅读 · 0 评论 -
数据结构(Data Structure)——线性表ADT(C/C++语言)
1.线性表定义: 线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列。数据元素是一个抽象的符号,其具体含义在不同的情况下一般不同。 在稍复杂的线性表中,一个数据元素可由多个数据项(item)组成,此种情况下常把数据元素称为记录(record),含有大量记录的线性表又称文件(file)。 线性表中的个数n定义为线性表...原创 2018-04-22 21:28:55 · 2535 阅读 · 2 评论 -
数据结构(Data Structure)——链表ADT(C/C++语言)
#include<stdlib.h>#include<stdio.h>#define OK 1#define ERROR 0#define OVERFLOW -1#define TRUE 1#define FALSE 0typedef int ElemType;//指定链表中数据类型typedef int Status;typedef struct ...原创 2018-04-25 21:20:57 · 413 阅读 · 0 评论 -
C++标准库之栈(Stack)实现进制转换
#include <iostream>#include <stack>using namespace std;int main(){ int b,n,e; cout << "请输入数制转换的进制及数值:"<<endl; cin >> b >> n; cout << "数原创 2018-04-27 14:33:04 · 1924 阅读 · 2 评论 -
C++ 栈实现表达式括号匹配检测
#include <stdio.h>#include <string>#include <stdlib.h>#include <iostream>#include <stack>using namespace std;/*Created by HarvestWu on 2018/5/4.*/int match(char...原创 2018-05-04 21:01:56 · 1136 阅读 · 1 评论 -
C++ 栈计算后缀表达式的值
示例按照只有一位数的数值设计,可用分隔符来处理后,广义化。#include <stdio.h>#include <string>#include <stdlib.h>#include <iostream>#include <stack>using namespace std;/*Created by HarvestWu o...原创 2018-05-04 21:21:30 · 1973 阅读 · 0 评论 -
C++ 实现顺序栈
#include <stdio.h>#include <string>#include <stdlib.h>#include <iostream>#include <stack>#define maxSize 100using namespace std;/*Created by HarvestWu on 2018/5/...原创 2018-05-04 22:28:47 · 453 阅读 · 0 评论 -
C++ 二叉树的遍历
#include <bits/stdc++.h>#define MaxSize 100/* * Created by HarvestWu on 2018/06/19. */using namespace std;typedef char ElemType;//定义二叉树结构typedef struct BTNode{ ElemType data; s...原创 2018-06-20 21:16:52 · 307 阅读 · 0 评论 -
C++ 由先序遍历、中序遍历结果构建二叉树
1.先序中第一个为根结点;2.在中序中找到该值,以该值所在位置,前后分为左序列,右序列;3.重复1、2处理左右序列,直到子序列只剩下一个元素时结束。其中l2、r1和l2、r2分别表示当前先序、中序元素范围#include <bits/stdc++.h>#define MaxSize 100/* * Created by HarvestWu on 2018/06/21. */u...原创 2018-06-21 21:34:28 · 2302 阅读 · 0 评论 -
C++ 统计二叉树所有结点数、叶子结点数
统计所有结点数://统计所有结点数int n1=0;void countAllNode(BTNode *p){ if(p!=NULL) { ++n1; countAllNode(p->lchild); countAllNode(p->rchild); }}统计叶子结点数://统计叶子结点数int n2=...原创 2018-06-22 19:11:08 · 7758 阅读 · 0 评论 -
C++ 将二叉树叶子结点从左往右顺序串连
关键代码://将叶子结点从左往右顺序串连void linkLeafNode(BTNode *p,BTNode *&head,BTNode *&tail){ if(p!=NULL) { if(p->lchild==NULL&&p->rchild==NULL)//判断是否叶子结点 { ...原创 2018-06-22 19:53:52 · 797 阅读 · 0 评论 -
C++ 将中缀表达式转为后缀表达式
#include <cstdio>#include <cstdlib>#include <cstring>#include <stack>#define maxSize 100/* * Created by HarvestWu on 2018/6/1. */using namespace std;int main(){ s...原创 2018-06-01 18:13:36 · 581 阅读 · 0 评论 -
C++ 串操作
#include <cstdio>#include <cstdlib>#include <iostream>#include <cstring>/* * Created by HarvestWu on 2018/6/1. */using namespace std;typedef struct Str{ char *ch; ...原创 2018-06-01 19:19:31 · 2321 阅读 · 1 评论 -
C++ 稀疏矩阵对应十字链表构建
#include <cstdio>#include <cstdlib>#define maxSize 100/* * Created by HarvestWu on 2018/6/1. */typedef struct OLNode{ int row,col; //行号和列号 struct OLNode *rig...原创 2018-06-01 21:22:11 · 951 阅读 · 0 评论 -
C++ 图的邻接表存储与搜索遍历(DFS、BFS)
#include <bits/stdc++.h>#define MaxSize 100/** Created by HarvestWu on 2018/06/22.*/using namespace std;typedef int ElemType;//边表typedef struct ArcNode{ int adjvex; /...原创 2018-06-25 21:04:30 · 1569 阅读 · 0 评论 -
C++ 邻接表存储下判断无向图是否为树(DFS)
#include <bits/stdc++.h>#define MaxSize 100/** Created by HarvestWu on 2018/06/22.*/using namespace std;typedef int ElemType;//边表typedef struct ArcNode{ int adjvex; ...原创 2018-06-25 21:39:08 · 1850 阅读 · 1 评论 -
C++ 平分法、试位法、牛顿法求方程近似解
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define eps 1e-2/** Created by HarvestWu on 2018/07/10.*/using namespace std;//原方程double f...原创 2018-07-10 19:48:58 · 2099 阅读 · 0 评论 -
C++ 大数加、减、乘、除、乘方运算
#include <iostream>#include <string.h>#include <time.h>#define DIGIT 4#define DEPTH 10000#define MAX 100#define MAXSIZE 200000using namespace std;typedef int bignum_t[MA...原创 2018-07-20 20:40:22 · 2503 阅读 · 0 评论 -
《剑指Offer》——二维数组中的查找
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 #include<cstdio>#include<cstdlib>#include<vector>#include<iostream&g...原创 2019-01-14 13:19:52 · 150 阅读 · 0 评论