10 renwotao2009

尚未进行身份认证

努力程度之低,离拼天赋还远的很

等级
TA的排名 4k+

图的拓扑排序

图的基本算法-拓扑序列拓扑排序拓扑排序基本算法代码示例拓扑排序对于一个有向无环图,简称DAG(Directed Acyclic Graph),进行拓扑排序就是将图中所有的定点排成一个线性序列,使得图中任意一对定点u和v,若边<u,v>则u在拓扑排序中出现在v之前。这样的序列成为满足拓扑次序的序列成为拓扑排序。拓扑排序基本算法对于一个有向无环图:找到入度为0的顶点,可能有多个...

2020-03-29 18:11:44

什么是CPU上下文切换

什么是CPU上下文切换系统任务进程上下文切换系统调用系统调用的步骤进程上下文切换步骤进程上下文切换代价进程上下文切换的时机进程调度场景线程上下文切换线程和进程最大区别线程上下文切换的两种情况总结中断上下问切换中断和进程上下文区别总结系统任务系统中有三种任务:线程进程硬件触发信号,导致中断处理根据任务不同,上下文切换也分为三种:5. 线程上下文切换6. 进程上下文切换7. 中断...

2019-04-24 11:42:45

怎么理解平均负载

uptime查看系统负载$ uptime17:43 up 13 days, 6:02, 2 users, load averages: 2.72 1.85 1.7917:43 // 当前时间up 13 days, 6:02 // 系统运行时间2 users // 正在登陆的用户最后三个数据:1分钟、5分钟、15分钟的平均负载平均负载平均负载的含义平均负载是指单位时间内,...

2019-04-20 15:09:07

go服务的内存优化总结

go服务的内存优化总结go的内存分配方式新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入go的内存分配方式...

2019-04-20 14:39:58

数字转化为16进制数

leetcode:https://leetcode-cn.com/problems/convert-a-number-to-hexadecimal/思路1:数组hash存储string hex=“0123456789abcdef”;排除0先考虑num大于0的数,实现非常简单考虑num小于0的数,负数存储最高为1,且INT_MIN的绝对值等于INT_MAX+1,那么需要对INT_MIN做...

2019-04-16 22:12:28

数组初始化引起的性能问题

数组初始化// array.cint main(){ char a1[1024] = ""; char a2[1024] = {0}; char a3[1024] = {'\0'}; char a4[1024]; a4[0] = '\0'; return 0;}如上代码所示,前三种都是数组初始化的方法,a4仅仅初始化第一个元素。// gcc 版本:

2017-08-21 21:24:20

linux中buffer和cache的区别

free命令$free -h total used free shared buffers cachedMem: 62G 62G 739M 1.7M 11M 9.0G-/+ buffers/cache: 53G 9.

2017-08-08 10:07:04

DP-House Robber

House RobberHouse Robber 题目大意: 一个小偷准备偷窃一条街道上的房屋,但这些房屋中任意相邻的房屋在同一夜被偷盗,那么就会自动报警。每个房屋中可偷盗的物品价值不一样,如果你是一名窃贼,怎么在同一夜中偷窃物品价值最大而不触发报警装置?分析什么样的最优化问题适合使用DP如何判断一个问题是否可用动态规划算法求解?下面是引用《算法导论》中什么问题才能使用DP的论述: 《算法导

2016-11-26 16:26:26

基础算法-计数排序

计数排序计数排序要求所有元素都是0到k之间的整数(注:必须确定知道最大值k)。基本思想数列中小于等于元素a的个数为n,则直接把a放到第n-1个位置(注:索引从0开始)。代码/* * src[] : int, 待排序的整型数组 * dst[] : int, 返回已排序的整型数组 * size : int, src和dst数组的大小 * k : int, src数组中最大值k*/ void

2016-11-22 17:23:01

关于滚动数组

Minimum Path SumGiven a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.普通的DP解决方案 DP的4个基本要素: 状态(State)

2016-11-19 21:16:10

实现一个简单的HashTable

实现一个简单的HashTable,包括以下三个接口:put,get ,delete。基本原理哈希表的基本概念哈希表就是一种以 键-值(key-indexed) 存储数据的结构,只要输入待查找的值即key,即可查找到其对应的值。哈希函数是一种映射f(key) = index,多个key可以映射到一个index上,这在哈希表存储时产生冲突。哈希函数可以迅速计算出key对应哈希表数组中的索引,但无法避免冲

2016-11-15 16:40:42

实现push,pop,max为O(1)的栈

原理使用两个栈来实现要求: 栈的push,pop,max都为O(1)。一个栈用来保存入栈数据中的最大值另一个栈用来正常保存入栈和出栈的数据,它max方法用来调用第一个栈保存的当前最大值实现辅助栈作用:用于保存当前最大值的栈template<typename T>class stackMax{public: stackMax():size(0), capacity(1), data

2016-11-10 20:08:12

重建二叉树

重建二叉树根据前序遍历序列和中序遍历序列重建二叉树/* * 二叉树重建辅助函数 * preorder: vector<int>,前序序列 * inorder : vector<int>,中序序列 * idx : int, 当前树的根节点的在前序序列中的索引 * start : int, 当前树在中序序列中开始的索引 * end : int, 当前树在中序学列中结束的

2016-11-08 10:08:31

LRU cache 算法的实现

#什么是LRULRU Cache是一个Cache置换算法,含义是“最近最少使用”,当Cache满(没有空闲的cache块)时,把满足“最近最少使用”的数据从Cache中置换出去,并且保证Cache中第一个数据是最近刚刚访问的。由“局部性原理”,这样的数据更有可能被接下来的程序访问。

2016-11-07 15:16:32

给定一个字符串,求出其最长的重复子串的长度

题目来源:这是编程珠玑上的一道题目概念字符串的前缀和后缀例如字符串 s =“abcdeabc” 则s的前缀: “a”,“ab”,“abc”,“abcd”,“abcde”,“abcdea”,“abcdeab”,“abcdeabc”其中除了s字符串本身(“abcdeabc”)之外,其他的前缀为s的真前缀。s的后缀: “abcdeabc”,“bcdeabc”,“cdeabc”,“deabc”,“ea

2016-11-05 11:55:55

数据库隔离级别的理解

数据库的隔离级别数据库中每个事务都要占用一些资源,比如对表/数据共享操作权限,事务的隔离级别描述了事务对资源共享程度。数据库的事务的隔离级别和解决的问题 隔离级别 出现的问题 原因 READ-UNCOMMITED 脏读 其他事务(线程)可以读取到当前事务修改但未提交的数据 READ-COMMITTED 不可重复读 设置数据库的隔离级别为READ-COMMITTED后

2016-11-03 10:07:31

DFS、BFS和Backtracking模板

搜索问题的解法DFS(深度优先搜索)BFS(广度优先搜索)backtracking(回溯)DFS模板void dfs(...) { // 结束递归的条件 if (...) { ..... // 把“当前结果” 加入 “结果集容器” 中 return; } // 继续递归,里面可能有回溯,也可能没有 if (...) {

2016-11-01 11:33:20

约瑟夫环

约瑟夫环约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。通常解决这类问题时我们把编号从0~n-1,最后[1] 结果+1即为原问题的解。一般的解决方法直观上,通过循环链表非常的简单,只需要循环删除指定节点就

2016-10-31 15:41:38

求a的b次方根

牛顿迭代法 算法数学依据

2016-10-31 11:35:54

实现C库函数strcpy

1 实现c库的函数strcpy原型声明:char* strcpy(char* dst, const char* src);普通版本的strcpy//strcpy 实现没有检查dst和src内存重叠问题char* strcpy(char *dst, const char *src) //const约束,内容不可变{ assert((src != NULL) && (dst != NULL)

2016-10-18 22:33:15

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 红花
    红花
    子板块内专家分月排名榜第一