欢迎来到 Franklin-Qi 的世界

Max
Min

2020年8月22日

把字符串转换成整数

摘要: linux 中库函数有个atoi(),但当atoi(0x0)会直接崩溃,咱们也可以实现类型的功能。 一、题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能。当然,不能使用atoi或者其他类似的库函数。 二、详细代码 long long StrToIntCore(const char 阅读全文

posted @ 2020-08-22 18:03 yusq77 阅读(194) 评论(0) 推荐(0)

丑数

摘要: 一、题目 我们把只包含因子2、3和5的数称作丑数(Ugly Number)。 求按从小到大的顺序的第1500个丑数。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做第一个丑数。 二、问题分析 假设这个数为 n, 如果n是丑数,只有三种可能: n是能整除2,即 n % 2 == 0 阅读全文

posted @ 2020-08-22 17:58 yusq77 阅读(168) 评论(0) 推荐(0)

字符流中第一个只出现一次的字符

摘要: 一、题目 请实现一个函数用来找出字符流中第一个只出现一次的字符。 例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是'g'。 当从该字符流中读出前六个字符"google"时,第一个只出现一次的字符是'l'。 二、问题分析 字符只能一个接着一个从字符流中读出来。用字符的ASCII码 阅读全文

posted @ 2020-08-22 17:48 yusq77 阅读(195) 评论(0) 推荐(0)

字符串中第一个只出现一次的字符

摘要: 一、题目 在字符串中找出第一个只出现一次的字符。如输入"abaccdeff",则输出'b'。 二、问题分析 需要一个数据容器(哈希表)存放每个字符出现的次数,把一个个字符映射成一个数字。哈希表的键值(Key)是字符,值(Value)是该字符出现的次数。 通过2次字符串扫描,第1次进行制作哈希表,第2 阅读全文

posted @ 2020-08-22 17:46 yusq77 阅读(298) 评论(0) 推荐(0)

二进制数中1的个数

摘要: 一、题目 请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如,把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。 二、解决方案 1. 避免死循环的位操作 时间复杂度为O(log2n)。 用位操作优于除法,考虑负数,比如n = 0x800000000,循环右移n可能会 阅读全文

posted @ 2020-08-22 17:40 yusq77 阅读(121) 评论(0) 推荐(0)

终端下的高效命令行操作

摘要: 终端terminal下的高效命令行能让你快速摆脱鼠标。 一、Bang(!)命令 Bang(!)命令,可以减少键盘输入,大大提高程序员的工作效率。 $ !! // 上一条命令 $ !* // 使用上一条命令的所有参数: $ !$ // 使用上一条命令的最后一个参数 $ !:- // 使用上一条命令中除 阅读全文

posted @ 2020-08-22 17:26 yusq77 阅读(183) 评论(0) 推荐(0)

再也不怕分配内存了

摘要: 最近改用户组管理项目bug时,遇到一个关于内存分配的问题。原来是同事用一个长度为4096的字符数组分配内存, strncpy()函数造成拷贝错误,导致用户组管理编辑、添加和删除功能不可用。 虽然是个小问题,但是内存分配一直都是很重要的,严重时会导致系统崩溃。 一、内存分配方式 静态存储区域中分配(系 阅读全文

posted @ 2020-08-22 16:59 yusq77 阅读(77) 评论(0) 推荐(0)

相识Hyperscan

摘要: Hyperscan是一款来自于Intel的高性能的正则表达式匹配库。 参考 Hyperscan简介 阅读全文

posted @ 2020-08-22 16:35 yusq77 阅读(125) 评论(0) 推荐(0)

彻底卸载源码包

摘要: 一、正常的编译安装/卸载 源码的安装一般由3个步骤组成: 配置(configure) 编译(make) 安装(make install)。 configure文件是一个可执行的脚本文件,它有很多选项,在待安装的源码目录下使用命令./configure –help可以输出详细的选项列表。 其中--pr 阅读全文

posted @ 2020-08-22 16:14 yusq77 阅读(1513) 评论(0) 推荐(0)

巧用你的gdb

摘要: 一、调试段错误 当运行程序发生段错误时,使用GDB调试能快速定位错误位置 Linux提供的core dump机制:当程序中出现内存操作错误时,会发生崩溃并产生核心文件(core文件)。 (1)无论你是用Makefile来编译,还是直接在命令行手工输入命令来编译,都应该加上 -g 选项。 (2)一般来 阅读全文

posted @ 2020-08-22 15:01 yusq77 阅读(164) 评论(0) 推荐(0)

导航