自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 Linux内核

在Ubuntu系统中更新内核是一个相对直接的过程,但需要谨慎操作,因为内核是操作系统的核心部分。这应该会显示你刚刚安装的新内核版本。这将显示当前运行的内核版本。

2024-03-22 10:57:43 653

原创 ubuntu下安装Sphinx,编译pdf

安装WSL2:安装sphinx

2023-08-22 08:24:59 1370

原创 【Benchmark调研】

QPS vs TPS:QPS基本类似于TPS,但是不同的是,对于一个页面的一次访问,形成一个TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入“QPS”之中。如,访问一个页面会请求服务器2次,一次访问,产生一个“T”,产生2个“Q”。RT(Response-time)响应时间:执行一个请求从开始到最后收到响应数据所花费的总体时间,即从客户端发起请求到收到服务器响应结果的时间。Concurrency:并发数,是指系统同时能处理的请求数量,这个也反应了系统的负载能力。

2023-07-18 08:21:52 238

原创 反转链表实例

#include <iostream>#include<vector>#include<string>using namespace std;struct ListNode{ ListNode* next; int value; ListNode(int val) { value=val; next=nullptr; }};ListNode* FZ(ListNode* head){

2021-03-08 21:18:05 143

原创 二叉树的层次遍历(BFS)从最后一层开始输出

#include <iostream>#include<bits/stdc++.h>using namespace std;struct TreeNode{ TreeNode *left; TreeNode * right; int val; TreeNode(int x):val(x),left(NULL),right(NULL) {} //TreeNode(int x) : val(x), left(NULL), right(NULL

2021-03-08 21:08:36 252

原创 01背包

#include <iostream>#include<bits/stdc++.h>using namespace std;int nNum[105];int w[105];int v[105];int f[10005];int main(){ int m,n; cin>>n>>m; for(int i=0;i<n;i++) { cin>>nNum[i]>>w[i]&

2020-09-17 22:42:19 94

原创 并查集 最小生成树

并查集代码:#include <iostream>#include<bits/stdc++.h>using namespace std;int f[10005];int findpa(int x){ if(f[x]!=x) { return f[x]=findpa(f[x]); } else { return x; }}int main(){ int m,n,q; int

2020-09-17 22:40:43 91

原创 输入若干行字符串(回车看做空字符串)getline

#include<bits/stdc++.h>using namespace std;bool isValid(string s) { vector<char> v; for(int i=0;i<s.length();i++) { if(s[i]=='(') { v.push_back(')'); }

2020-09-15 21:06:39 688

原创 C++

文章目录1.深拷贝和浅拷贝2.delete 与 delete[] 区别3.new和malloc区别4.const的用法及和define的差别5.编译和链接的区别6.堆和栈的效率比较7.struct和class的区别8.虚函数和纯虚函数9.sizeof()和strlen()比较10.堆区和栈区的区别11.list和vector的区别,map和set的区别12.TCP与UDP区别总结13.基于TCP和UDP的常用协议14.C++内存泄漏及解决办法15.stack和queue的使用+map+set讲解16.为什么

2020-09-02 15:56:24 325 1

原创 十大排序算法

01. 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。02. 算法复杂度03. 相关概念稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。时间复杂度:对排序数

2020-07-15 15:20:39 308

原创 动态规划——硬币

面试题 08.11. 硬币硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007)示例1:输入: n = 5输出:2解释: 有两种方式可以凑成总金额:5=55=1+1+1+1+1示例2:输入: n = 10输出:4解释: 有四种方式可以凑成总金额:10=1010=5+510=5+1+1+1+1+110=1+1+1+1+1+1+1+1+1+1求解:class Solution {pub

2020-07-12 11:11:16 145

原创 动态规划求解 删除与获得点数

740. 删除与获得点数给定一个整数数组 nums ,你可以对它进行一些操作。每次操作中,选择任意一个 nums[i] ,删除它并获得 nums[i] 的点数。之后,你必须删除每个等于 nums[i] - 1 或 nums[i] + 1 的元素。开始你拥有 0 个点数。返回你能通过这些操作获得的最大点数。示例 1:输入: nums = [3, 4, 2]输出: 6解释:删除 4 来获得 4 个点数,因此 3 也被删除。之后,删除 2 来获得 2 个点数。总共获得 6 个点数。示例 2:

2020-07-07 22:27:05 186

原创 旋转图像

给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。求解如下:转置+镜像class Solution {public: void rotate(vector<vector<int>>& matrix) { int n=matrix.size(); for(int i=0;i<n;i++) {

2020-06-28 18:16:58 109

原创 sort和substr用法

erase 在vector中的两种用法iterator erase (iterator position);//从向量中删除单个元素(位置)iterator erase (iterator first, iterator last);//从向量中删除元素范围[first,last)。// erasing from vector#include <iostream>#include <vector>int main (){ std::vector<int&gt

2020-06-22 10:22:59 155

原创 动态规划和深度优先之括号生成

数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例:输入:n = 3输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]动态规划求解:class Solution {public: void getAns(string str, int l, int r, vector<string>& ans){ if(l == 0 && r =

2020-06-21 12:12:56 173

原创 链表小试牛刀

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4求解:

2020-06-21 10:45:31 104

原创 队列小试牛刀

给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].求解:#include <iostream> // std::cin, std::cout#include <queue> // std::queue#include&

2020-06-18 23:45:01 101

原创 map哈希小试牛刀

罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。通常情况

2020-06-18 13:14:55 145

原创 动态规划思想降低程序时间复杂度

给定正整数数组 A,A[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的距离为 j - i。一对景点(i < j)组成的观光组合的得分为(A[i] + A[j] + i - j):景点的评分之和减去它们两者之间的距离。返回一对观光景点能取得的最高分。暴力求解:#include<iostream>#include<vector>#include<algorithm>using namespace std;int maxScoreS

2020-06-17 11:33:09 550

原创 使用双指针思想处理数组求解过程,降低时间复杂度

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。暴力解法#include <iostream>#include<algorithm>#include<vector>using namespace std;int m

2020-06-17 11:14:47 269

原创 C++有符号和无符号整型

首先有符号正整型和无符号整型的范围分别如下:有符号当表示正数时,最高位为符号位(符号位为0),最大的正数是 0111 1111 1111 1111 1111 1111 1111 1111 即2^31 -1 = 2147483647当表示负数时,最高位为符号位(符号位为1),最小的负数是 1000 0000 0000 0000 0000 0000 0000 0000 而在计算机中是以补码的形式存储的,C语言规定 1000 0000 0000 0000 0000 0000 0000 0000 的补码

2020-06-16 23:52:58 4469

原创 C++11中求数组中最大最小值

*min_element*max_element例子:三角形最小路径之和class Solution {public: int minimumTotal(vector<vector<int>>& triangle) { int m=triangle.size(); //int n=triangle[0].size(); int Min=1e9; vector<vector<int&gt

2020-06-16 08:47:49 675

原创 读入坐标文件输出坐标距离

#include<iostream>#include<fstream>#include<math.h>#include<vector>using namespace std;int dis;int main(){ ifstream infile("zuobiao.txt"); int x,y; vector<int> b; vector<int> c; while(!infile.

2020-06-10 20:30:43 229

原创 string与char *,char[ ]的转换和使用

/* memcmp example */#include <stdio.h>#include <string.h>#include <string>#include<iostream>using namespace std;int main (){ char buffer1[] = "DWgaOtP12df0"; //char buffer2[] = "DWGAOTP12DF0"; string buffer2="DWGAOTP12D

2020-06-10 14:31:55 175

原创 跳一跳

跳一跳:有n个盒子排成了一行,每个盒子上面有一个数字a[i],表示在该盒子上的人最多能向右移动a[i]个盒子(比如当前所在盒子上的数字是3,则表示可以一次向右前进1个盒子,2个盒子或者3个盒子)。从左边第一个盒子上开始体验游戏,请问最少需要移动几次能到最后一个盒子上?#include <iostream>#include <stdlib.h>#include <string.h>#include<vector>using namespace std

2020-06-07 10:12:16 553

原创 三维01背包问题

#include <iostream>#include <cstdio>#include <cstdlib>#include <vector>using namespace std;/** Welcome to vivo !*/int getCountOfApp(const char* input){ if(NULL == input){ return 0; } int cnt = 0; fo

2020-06-07 10:03:34 571

原创 深度优先代码框架及示例

在这里插入代码片

2020-06-06 22:01:14 145

原创 动态规划的框架

动态规划的解题步骤定义状态(其实也就是描述最优子结构)描述不同状态如何转移(一般可以求出一个状态转移方程)按一个方向(一般都是自底而上)求出该问题的解以01背包问题为例:定义状态定义状态dp[i][j]为前i件物品恰放入容量为j的背包时的最大价值;那么dp[n][v]就是这个问题的最终解;描述不同状态如何转移:在这个过程中,我们很自然想到的决策就是第i件物品放还是不放;放与不放会直接影响到dp[i][j]的值;a.放,那么dp[i][j]的状态可由dp[i-1][j-Ci] + Wi

2020-06-06 10:20:40 518

原创 关于while循环条件中i++问题

while(start1<len1 && start2<len2 && s1[start1]==s2[start2]) { start1++; start2++; sum++; }与 while(start1<len1 && start2<len2 && s1[start1++]==s2[start2++]) { sum++; }效果不同,前者每次做while判断s.

2020-06-05 10:01:00 2546 1

原创 C++11 auto的用法

auto表示挨个遍历元素#include <iostream>#include<vector>#include<map>using namespace std;int main(){ int array[] = {1, 2, 3, 4, 5}; for(auto e : array) cout << e << " "; cout<<endl; string str = "hel

2020-06-03 23:38:17 287

原创 利用set容器去重

#include <stdio.h>#include <vector>#include <set>#include<iostream>using namespace std;int main(){ vector<int> v; for (int i = 0; i < 10; i++){ v.push_back(i); v.push_bac

2020-06-03 21:52:59 232

原创 C++添加include头文件

visual studio/codeblocks附加include文件夹- codeblocksSettings->Compiler->Global compiler settings->Search directories->Compiler->Add->选择路径->点击OK。Settings->Compiler- visual studio打开xx项目,点击工具栏项目点击xx属性选择文件...

2020-05-27 22:53:44 1918

原创 C++类成员函数的访问权限

C++类成员函数的访问权限类成员函数对main函数变量的访问权限类之间变量的重复定义类成员函数对main函数变量的访问权限main函数本质也是函数,类成员函数只能访问全局变量和类中的变量,不能访问main函数里面的变量。类之间变量的重复定义不同的类中变量是不相通的,所以不同类内可以定义相同变量名的变量。...

2019-09-24 20:31:41 1550

原创 自然辩证法

4. 生态自然观与生态文明建设生态自然观概念:生态自然观是以现代科学技术为基础,概括和总结生态自然界的存在和发展规律形成的总的观点。是马克思主义自然观发展的当代形态之一。生态自然观主要观点:生态自然界系统具有整体性、多样性、层次性、开放性、动态性、自适应性和自组织性等特征。通过从自然界的人工化转向生态化,从非生态型人工自然界转向生态型人工自然界,实现人与自然的可持续发展。贯彻落实新发展...

2019-05-09 22:39:18 8727

原创 指针数组实现字符串排序

#include <stdio.h>#include<string.h>#include<iostream>using namespace std;void sort(char *line[],int n);void print(char *line[],int n);int main(){ int n,i; cin>>n; ch...

2019-05-05 23:11:23 2087 1

原创 opencv安装及图像处理使用

文章目录Windows下安装opencv读取图片,改变图片三个通道顺序(由RGB变为BRG),用imshow()显示图片不使用opencv工具(rectangle函数)画框,并保存所画框Windows下安装opencvpython -m pip install --upgrade pippip install opencv-python测试:打开pycharm输入 import cv2...

2019-04-29 20:19:42 287

原创 字符数组,字符指针,指针数组(字符串)的比较与使用

文章目录字符数组与字符指针字符数组字符指针指针数组(字符串)字符数组与字符指针在C语言中,可以用两种方法表示和存放字符串:(1)用字符数组存放一个字符串char str[]="I am happy";(2)用字符指针指向一个字符串 char *str="I am happy";字符数组#include<iostream>using namespace std;...

2019-04-27 16:29:18 9682 1

原创 函数指针和指针函数的区别及使用

文章目录指针函数函数指针指针函数指针函数本质是一个函数,返回值是某一类型指针写法如下:int* fun(int x,int y);int * fun(int x,int y);int *fun(int x,int y);例子如下:#include<iostream>using namespace std;char * D(char s[]){ return s...

2019-04-27 10:43:12 3295 1

原创 TensorFlow cpu版安装

TensorFlow cpu版安装查看python版本安装pip找到合适的安装包URL通过pip安装TensorFlow部分踩坑过程查看python版本python显示版本python 2.7安装pipsudo apt-get install python-pip python-dev找到合适的安装包URLexport TF_BINARY_URL=https://storage.go...

2019-04-19 11:28:49 224 1

原创 约束满足问题

目录1.CSP定义2.与局部搜索的区别3.如何形式化CSP4.约束传播与局部相容性5.CSP形式化为一个搜索问题(回溯)6.CSP回溯搜索如何提高搜索效率1.CSP定义使用一组变量来描述状态,每个变量有自己的值。当每个变量都有自己的赋值同时满足所有关于变量的约束时,问题就得到了解决。2.与局部搜索的区别局部搜索一次为8个变量赋值,再调整取值;CSP部分赋值,一次为一个变量赋值。...

2019-04-16 22:05:44 2290

空空如也

空空如也

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

TA关注的人

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