自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (4)
  • 问答 (3)
  • 收藏
  • 关注

原创 C/C++读入若干连续数据

如果题目要求你读入若干个连续整数,其间用空格隔开,换行符作为输入结束标准,数目不知道,要求你将输入的数排序打印,求max,min,排序等用优先队列实现排序,当然使用set也可以#include <iostream>#include <queue>using namespace std;int main(){ priority_queue<int,vect...

2018-12-19 21:51:08 2232 1

原创 PAT乙级1053住房空置率

#include using namespace std;#include int main(){vector<int>v1;int N, D;int may_empty, real_empty;float e;cin >> N;cin >> e;cin >> D;may_empty = real_empty = 0;fo...

2018-12-19 21:24:29 164

原创 map关联容器的基本操作

map<key,value>保存的一对pair ,其内部通过红黑树实现,查找效率非常高,用户插入数据后,系统会自动根据key值大小进行排序,当然,一些自定义的类需要自定义比较函数,例如仿函数,重载< , >操作符等。//简单map容器初始化void test02() { //map存储的是一个pair map<int, string>MyMap; My...

2018-12-14 16:54:20 247 1

原创 pat乙级 1094谷歌招聘问题

思路 用c++ string很快解决问题#include "pch.h"#include <iostream>using namespace std;#include <string>#include <math.h>//判断是否是素数bool is_prime(int num) { if (num == 2 || num == 3) ...

2018-12-12 19:12:26 382 1

原创 c++ define const区别

编译器处理时间:define是在预编译时处理的,const则是在编译运行时处理的。编译器处理方式:对于define编译器每次处理时只是简单的做替换,不会做类型检测,可能会有安全隐患,并且每次替换都会重新分配内存;对于const编译器会编译检查,会报编译错误,const常量在常量内存区中存储,至始至终只会占用一份内存,不会像define那样每次替换都会重新分配内存。数据类型:define 没有明...

2018-12-31 09:38:11 790

原创 快排 quicksort

快排,采用分治法。void my_swap(vector<int>&v,int a,int b) { int temp = v[a]; v[a] = v[b]; v[b] = temp;}void quickSort(vector<int>&v, int begin, int end) { if (end >= begin) { ...

2018-12-29 00:35:34 147

原创 实现vector的swap函数误区

今天coding的时候想实现vector的swap函数,刚开始是这样写的,发现调用swap后原来的vector里面的值根本没有发生改变,想了许久,才发现没有取引用,vector作为一个类,不传引用仅仅是发生拷贝构造了一个局部对象,改变的只是局部对象里的值。void swap(vector<int>v, int a, int b) { int temp = v[a]; v[a] =...

2018-12-29 00:33:02 1617

原创 堆排序 heapsort

堆是一种数据结构,注意不是二叉树,是数组结构,但是处理堆时可以看成完全二叉树,分为大根堆和小根堆。一:首先初始化堆,保证每个root左右孩子的值均不大于它,且该点需对每个子树的root成立//我这里是调整为大根堆 void init(vector<int>&v) { for (int i = v.size() - 1; i > 0; i--) { ...

2018-12-29 00:27:44 136

原创 行列都有序的二维数组查找问题

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。#include <iostream>#include <vector>using namespace std;bool Find(int target, vector<...

2018-12-27 21:19:07 369

原创 二叉树三种遍历递归及非递归实现

自己把握好入栈出栈时间即可实现#include <iostream>using namespace std;#include <stack>struct btnode { char data; struct btnode *lchild; struct btnode *rchild;};//初始化二叉树void create_btree(btnode *...

2018-12-27 19:57:47 801

原创 判断链表是否有环

有环单链表 就是链表尾结点不指向null,而是任意一个单链表结点思路一:利用set 遍历链表,依次将结点放入set中,第一个放入失败的就是第一个入环结点,否则没有环,但是空间复杂度为O(n)。void hoop1( node* head) { set<node*, cmp>s; node *p = head; while (p != NULL) { node* q = ...

2018-12-27 18:40:11 123

原创 大小端测试及转换

大端方式:big-endian 低位数据放在内存高位小端方式:little-endian 低位数据放在内存低位#include <iostream>using namespace std; void convert(unsigned int* a) { *a = ((*a & 0Xff000000) >> 24) //异或运算 ^ ...

2018-12-26 20:47:23 214 1

原创 小米oj 帮小学生排队

#include <iostream>using namespace std;#include <set>#include <vector>class mpair {public: mpair() {}; mpair(int a, int b) :a(a), b(b) {}; int a; int b; friend istream&amp...

2018-12-26 19:02:43 446

原创 判断两棵树是否同构

同构 就是结构相同 数据域不管 每个结点度相同下图2棵树是同构的 但是如果左边的树加了红色结点,则不同构思路:二叉树序列化 也可以参考下面的链接https://blog.csdn.net/qq_42673507/article/details/85260617#include <iostream>#include <string>using namespac...

2018-12-26 16:12:01 1477

原创 二叉树 判断一棵树是否是另一棵树的子树

题目:判断判断一棵树是否是另一棵树的子树,子树的意思是只要包含了一个结点,就得包含这个结点下的所有节点。意思就是二叉树结点的值也要相等 如下图2就是1的子树 如果将第二颗树根节点右孩子data改为2 就不是子树了。思路:将二叉树序列化,转化为2个字符串,再利用kmp算法或stl中的find()函数即可,若结点为空用#代表data 二树先序序列化为 1_#8_7##9##_ 用"_"表示一个结...

2018-12-26 13:30:00 2328

原创 链表交叉合并

L1:1 2 3 4 5L2:6 7 8 9 10合并后:1 6 2 7 3 8 4 9 5 10#include <iostream>using namespace std;typedef struct List node;struct List{ int data; struct List* next;};//insert at tailvoid inser...

2018-12-25 18:35:44 890

原创 就地反转链表

就地反转,就是空间复杂度O(1)#include <iostream>using namespace std;typedef struct List node;struct List{ int data; struct List* next;};//insert at tailvoid insert(node* &L, int num) { node...

2018-12-25 15:39:42 116

原创 PAT乙级1050

#include <iostream>using namespace std;#include <vector>#include <algorithm>#include <math.h> bool cmp(int a,int b){ return a>b; }int main(){ int num; cin >&g...

2018-12-25 14:41:51 216

原创 说反话 栈实现

利用栈 能很快解决该问题#include <iostream>#include <stack>using namespace std;#include <string>int main(){ stack<string>str_stack; string s; cin >> s; str_stack.push(s); ...

2018-12-24 13:09:06 204

原创 kmp衍生题 添加字符使字符串包含2个原始子串

题目:已知一个字符串 向末尾添加字符,使新的字符串包含2个原始子串 ,例如原始串为aba 只需添加一个b即可, 若原始子串为abc 则需添加abc,若原始子串为aaa,则只需要加一个a即可。 #include <iostream> #include <string> #include <vector> using namespace...

2018-12-24 12:54:30 146

原创 KMP字符串算法

#include <iostream>#include <string>#include <vector>using namespace std;//求next数组vector<int> Next_arr(const string& s) { vector<int>v(s.size()); v[0] = -1; /...

2018-12-24 12:51:40 88

原创 PAT乙级1040

#include using namespace std;#include //从后往前遍历,遇到T 记录T的个数,若遇到A 则记录AT的个数,遇到P 则记录PAT的个数int main(){string s;cin >> s;long sum;int cur_sum; //记录某一时刻PAT个数int num_T; //记录T的个数sum = cur_su...

2018-12-19 20:16:54 141

原创 PAT1039 乙级

运用map容易 复杂度nlgn#include <iostream>#include <map>#include <set>#include <string>using namespace std;//string 放入mapvoid Push_map(map<char,int>&m, const string&...

2018-12-18 15:51:52 161

原创 PAT乙级1037

分割字符串即可,注意substr(begin,end)里的参数 是指将begin到end-1位上的数提取出来#include <iostream>#include <string>#include <math.h>using namespace std;//首先分割字符串 封装成函数void My_Split_String(string s, in...

2018-12-17 22:06:16 84

原创 PAT乙级1042

#include <iostream> using namespace std; #include <string> #include <map> int main() { string s; getline(cin, s); map<char, int>My_map; ...

2018-12-17 21:25:44 129

原创 PAT乙级1091

#include <iostream>#include <string>#include <vector>using namespace std;//判断一个数是否是自守数void ziShouShu(int a) { string s; string aa = to_string(a); for (int i = 1; i < 10; ...

2018-12-12 20:31:55 193

原创 PAT乙级1093

采用vector string很快解决问题#include <iostream>#include <set>using namespace std;#include <string>#include <vector>#include <algorithm>int main(){ string s1, s2; //要...

2018-12-12 19:54:00 275

原创 C++string 基本函数实现

#include <iostream>#include <string>using namespace std;//初始化-----------------------------------------------------void test01() { string a;//默认构造函数 string b("string"); string c = "...

2018-12-11 22:05:39 450

原创 白话文说c++ 操作符重载

前言c++操作符重载的背景主要是原有的操作符+ - += 等只能运算基本数据类型 int double这些,但是实际中我们经常遇到很多自定义的类型,比如复数 结构体等,比如要计算1+2i 与2+3i这两个复数的和或者比大小,计算机就没有直接的方法进行计算,这时候,运算符重载起到了很大的作用,其实我们也可以自己定义一个add(complex a,complex b)进行计算,但是通过运算符重载,我...

2018-12-05 21:03:49 130

java学习计划.rtf

MAVEN实战,入门MAVEN好帮手

2019-12-21

DUILIB库中XML所以属性---详细

适合初学duilib的同学,里面有详细的属性列表及其解释

2019-01-23

合肥工大离散实验报告题目

本资源为合工大离散实验报告的题目,供有需要的人参考。

2018-10-28

合工大数据结构试验

本实验为合工大数据结构试验,有兴趣自行下载,代码另附

2018-10-27

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除