08 2019 档案
摘要:在windows下和linux下试了这段程序,结果大跌眼镜 windows下vector慢list差不多三倍 而linux下两者相差不大,优势vector反而快一下
阅读全文
摘要:top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 视图参数含义 top视图分为两部分:操作系统资源概况信息和进程信息。首先分析资源概况中各个参数的含义,再来分析下进程信息中各个参数含义。 10:33:25: 操作系统当前时间 up
阅读全文
摘要:首先贴另外一个地址https://blog.csdn.net/kikikind/article/details/2645316 一、理论上case 当一个纯虚函数被调用到时,vc++的debug模式下会弹出这么一个对话框: 这里没拷贝到。 然后就是crash了。 在网上找了一下,发现已经有人对此作了
阅读全文
摘要:微博上看到有人在讨论尾递归,想起以前曾看过老赵写的一篇相关的博客,介绍的比较详细了,相信很多人都看过,我也在下面留了言,但挑了个刺,表示文章在关键点上一带而过了,老赵自然是懂的,但看的人如果不深入思考,未必真正的明白,下面我说说我的理解。 什么是尾递归 什么是尾递归呢?(tail recursion
阅读全文
摘要:在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3输出: 1->2->3->4示例 2: 输入: -1->5->3->4->0输出: -1->0->3->4->5 递归版:(不符合空间复杂度要求) 题目要求时间空间复杂度分别为O(nl
阅读全文
摘要:再贴张排序的时间与空间复杂度的图 总结: 为什么堆排序的时间复杂度理想却很少被采用: 作者:qinzp链接:https://www.zhihu.com/question/23873747/answer/327295185来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
阅读全文
摘要:1 void heapify(int arr[], int n, int i) 2 { 3 int largest = i; // 将最大元素设置为堆顶元素 4 int l = 2 * i + 1; // left = 2*i + 1 5 int r = 2 * i + 2; // right =
阅读全文
摘要:给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1: 输入: 2 / \ 1 3输出: true示例 2: 输入: 5 / \ 1 4 / \
阅读全文
摘要:影响TCP 网络时延的因素硬件速度网络和服务器的负载请求和响应报文的尺寸客户端和服务器之间的距离TCP 协议的技术复杂性TCP协议产生的时延TCP 连接建立握手;TCP 慢启动拥塞控制;数据聚集的 Nagle 算法;用于捎带确认的 TCP 延迟确认算法;TIME_WAIT 时延和端口耗尽。TCP连接
阅读全文
摘要:mpstat是Multiprocessor Statistics的缩写,是实时监控工具,报告与cpu的一些统计信息这些信息都存在/proc/stat文件中,在多CPU系统里,其不但能查看所有的CPU的平均状况的信息,而且能够有查看特定的cpu信息,mpstat最大的特点是:可以查看多核心的cpu中每
阅读全文
摘要:给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回 true 。 示例 2: 给定二叉树
阅读全文
摘要:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6,4]输出: 7解释: 在第 2
阅读全文
摘要:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买
阅读全文
摘要:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。进阶: 如果你已经实现复杂度为 O(n) 的解法,尝试使用更为
阅读全文
摘要:启动和退出GDBGDB(GNU Project Debugger)几乎适用于所有类Unix系统,小巧方便且不失功能强大,Linux/Unix程序员经常用它来调试程序。 总的来说有几下几种方法启动GDB gdb(不加任何参数),如果不希望打印授权信息加上-silent参数 gdb 可执行文件 gdb
阅读全文
摘要:一.编译log4cxx遇到的问题 1.error: narrowing conversion 这是在gcc-6下面一个官方的错误 解决方法 https://issues.apache.org/jira/browse/LOGCXX-482 2.编译时候出现/usr/local/apr-util/lib
阅读全文
摘要:如下语句 case $0 in /*) ;; *) ;; /*在这里的作用就是绝对路径的意思
阅读全文
摘要:cmake是Linux(这里默认是Ubuntu系统)下常使用的编译C++的工具,而使用cmake就需要先在CmakeLists.txt文件中对编译规则进行。这里介绍常用的三种指令add_library、target_link_libraries和link_directories,该笔记主要参考了cm
阅读全文
摘要:在说明Linux的.a、.so和.o文件关系之前,先来看看windows下obj,lib,dll,exe的关系 windows下obj,lib,dll,exe的关系 lib是和dll对应的。lib是静态链接库的库文件,dll是动态链接库的库文件。 所谓静态就是link的时候把里面需要的东西抽取出来安
阅读全文
摘要:soname( Short for shared object name) 其是应用程序加载dll 时候,其寻找共享库用的文件名。其格式为 lib + math+.so + ( major version number) 其只包含major version number,换句话说,也就是只要其接口没
阅读全文