数据结构
EIDoradol
写点什么给自己,原来代码是可以很有趣的
展开
-
未知数据规模的保存方法
#include "iostream"#include "vector"using namespace std;int main(){ int m, t; vector<int> v; cin >> m; for (int i = 0; i < m; i++) { while (1) { scanf("%d", &t); v.push_bac原创 2021-04-04 21:09:04 · 194 阅读 · 0 评论 -
剑指offer刷题——leetcode中等+
题目一:链表class Solution {public: ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) { int carry = 0; ListNode *root = new ListNode(0), *n = root; while (l1 != NULL || l2 != NULL || carry) { int v1 = 0, v2 = 0;原创 2020-07-28 09:30:29 · 153 阅读 · 0 评论 -
剑指offer刷题——腾讯真题(C++)
无需算法,比较简单。经典01背包问题原创 2020-06-17 08:48:42 · 251 阅读 · 0 评论 -
剑指offer刷题——股票最大利润(C++)
题目贪心法从左到右更新最大利润class Solution {public: int maxProfit(vector<int>& prices) { if(prices.empty())return 0; int maxv = 0; for(int i = 1,minv = prices[0];i<prices.size();i++) { maxv = max(maxv,pric原创 2020-06-16 22:04:48 · 261 阅读 · 0 评论 -
剑指offer刷题——反转二叉树(C++)
牛客网二叉树镜像递归实现当然这样时间复杂度会高一些,也可以用swap()直接交换,不过只要理解了交换的步骤,怎么优化也就不是问题了。class Solution {public: void Mirror(TreeNode *pRoot) { if(pRoot) { TreeNode* p=pRoot->left; TreeNode* q=pRoot->right; p原创 2020-06-16 21:39:13 · 220 阅读 · 0 评论 -
C语言链表——电视机管理系统
#include "stdio.h"#include "stdlib.h" //malloc#include "string.h"typedef struct { char no[4]; //4位编号 char name[20]; //品牌 int peace; //价格}TV;//链表结点的定义:typedef struct LNode { TV data; //数据域 struct LNode* next; //指针域}LNode, *原创 2020-05-16 11:08:32 · 618 阅读 · 1 评论 -
C++线程池详解
今天上午试了一下阿里的面试题目,有关于线程的问题总结一下什么是线程池?它干了什么?1、解决任务处理2、解决阻塞I/O3、解决线程创建和销毁的成本问题4、管理线程如储存日志到磁盘中(磁盘速度要慢很多)log("xx-xx-xx%s\n");//zhi...原创 2020-05-08 23:27:53 · 2061 阅读 · 5 评论 -
蓝桥杯模拟赛c++实现村子规划费用问题
最小生成树问题先来了解一下最小生成树在一给定的无向图G = (V, E) 中,(u, v) 代表连接顶点 u 与顶点 v 的边(即),而 w(u, v) 代表此边的权重,若存在 T 为 E 的子集(即)且为无循环图,使得的 w(T) 最小,则此 T 为 G 的最小生成树。其实就是来计算最小权的算法,本文用prim算法实现for (i = 2; i <= n; i++) { ...原创 2020-04-26 20:38:09 · 384 阅读 · 0 评论 -
STL标准库(二)
补充关于库函数的操作Iterator(迭代器)模式又称Cursor(游标)模式,用于提供一种方法顺序访问一个聚合对象中各个元素, 而又不需暴露该对象的内部表示。或者这样说可能更容易理解:Iterator模式是运用于聚合对象的一种模式,通过运用该模式,使得我们可以在不知道对象内部表示的情况下,按照一定顺序(由iterator提供的方法)访问聚合对象中的各个元素。对前一篇文章的迭代器作一个补充...原创 2020-04-13 20:53:09 · 247 阅读 · 1 评论 -
STL标准库(一)
目录1.containers容器2.iterators迭代器3.allocator空间配置器4.adapters配接器5.algorithms算法6.functors仿函数致敬开发者Alexander Stepanov、Meng Lee和David R Mussercontainers算法重要,但是算法是建立在对数据操作的基础上,如何存放数据显得尤为重要。在STL开发者大牛的...原创 2020-04-10 19:59:40 · 553 阅读 · 3 评论 -
C语言10进制转换为任意进制
#include<stdio.h>#include<string.h>#include<stdlib.h> void Numchange(int A, int B)//转换,超过10的换成字符串输出 { int x=0; if (A) { Numchange(A / B, B); //递归调用短除 ,算出进制 x = A ...原创 2020-04-08 16:16:54 · 1836 阅读 · 0 评论 -
next数组怎么求
next数组的求解方法是:第一位的next值为0,第二位的next值为1,后面求解每一位的next值时,根据前一位进行比较。首先将前一位与其next值对应的内容进行比较,如果相等,则该位的next值就是前一位的next值加上1;如果不等,向前继续寻找next值对应的内容来与前一位进行比较,直到找到某个位上内容的next值对应的内容与前一位相等为止,则这个位对应的值加上1即为需求的next值;如果...原创 2020-04-05 20:16:17 · 4108 阅读 · 2 评论