C++
happyyouli
这个作者很懒,什么都没留下…
展开
-
各类二分查找C++实现
1. 二分查找/* 1. 二分查找,找到该值在数组中的下标,否则为-1 */static int binarySerach(vector<int> array, int key) { int left = 0; int right = array.size() - 1; // 这里必须是 <= while (left <= right...原创 2020-05-06 19:44:36 · 272 阅读 · 0 评论 -
字符串表达式求值C++实现
我们这里将字符串转化为后缀表达式,再进行后缀表达式求值。#include <iostream>#include <stack>#include <map>#include <vector>using namespace std;class Node {public: double num = 0; //操作数 char op = ...原创 2020-03-29 00:01:27 · 2396 阅读 · 0 评论 -
Floyd算法求最短路径C++实现
#include <iostream>#include <vector>#include <algorithm>#include <limits>#include <iomanip>using namespace std;const int INF = INT_MAX;void Floyd(int n, vector&l...原创 2020-03-27 16:54:41 · 1032 阅读 · 0 评论 -
Dijkstra求单源最短路径C++实现
#include <iostream>#include <vector>#include <limits>#include <algorithm>using namespace std;const int INF = INT_MAX;void Dijkstra(int n, int s, vector<vector<int...原创 2020-03-27 15:01:38 · 279 阅读 · 0 评论 -
图的DFS和BFS算法C++实现
使用邻接矩阵存储图#include <iostream>#include <queue>using namespace std;int vertex[100]; // 顶点数组int edge[100][100]; // 边数组bool visited[100]; // 访问标记int n; // 顶点个数void visit(int v) { ...原创 2020-03-26 13:44:32 · 1167 阅读 · 3 评论 -
红黑树相关算法C++实现
直接上代码,原理请看《算法导论》红黑树章节,很通俗易懂。#include <iostream>using namespace std;enum RBColor{RED, BLACK};//RBT结点定义struct TreeNode { int key; TreeNode* left; TreeNode* right; TreeNode* parent; RBC...原创 2020-03-12 18:55:02 · 145 阅读 · 0 评论 -
C++刷题常用方法总结(持续更新...)
cin输入加速:// 此段代码放在类外static auto x = []() { std::ios::sync_with_stdio(false); std::cin.tie(0); return 0;}();string字符串大小写转换#include <algorithm>string s = "abc ,ACB";transform(s....原创 2020-03-12 18:42:41 · 961 阅读 · 0 评论 -
人民币大写转换工具C++实现(支持任意位金额转换)
人民币大写转换规则中文大写金额数字应用正楷或行书填写,如壹、贰、叁、肆、伍、陆、柒、捌、玖、拾、佰、仟、万、亿、元、角、分、零、整(正)等字样。不得用一、二(两)、三、四、五、六、七、八、九、十、廿、毛、另(或0)填写,不得自造简化字。如果金额数字书写中使用繁体字,如贰、陆、亿、万、圆的,也可。中文大写金额数字到"元"为止的,在"元"之后,应写"整"(或"正")字,在"角"之后,可以不写...原创 2020-03-02 21:28:30 · 3716 阅读 · 1 评论 -
二叉搜索树(BST)相关算法的C++实现
先指出在实现过程中容易出错的几点:插入节点算法 treeInsert 中,由于当初始为空树时,在函数中需要将根节点的指针指向新插入的节点,所以参数列表中一定要用指向根节点指针的引用。删除节点算法 treeDelete 和 treeDelete_v2 中,由于有可能对根节点的指向做修改,所以参数列表中一定要用指向根节点指针的引用。#include <iostream>usin...原创 2019-10-22 19:11:59 · 262 阅读 · 0 评论