![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试编程题
LearnLHC
这个作者很懒,什么都没留下…
展开
-
【编程练习题】实现一个算法,确定一个字符串的所有字符是否全都不同。假使不允许使用额外的数据结构,又该如何处理。
在编写算法之前,要先确认是ascii字符串还是unicode字符串Ascii码表最多就256个字符:以一个字节来存放一个 ASCII 字符 1byte = 8bit,故最多能存放2^8 = 256个字符标准ASCII码:是 7 位编码,多余出来的一位(最高位)在计算机内部通常保持为 0 (在数据传输时可用作奇偶校验位)。共128个字符0~31及127(共33个)是控制字符或通信专用...原创 2019-03-06 11:32:19 · 797 阅读 · 0 评论 -
【编程练习题】面试常考C语言里库函数-atoi.itoa.atof.strcmp.strcpy.memset.memcpy
这些函数的代码都很短小,但是面试官对你这几行短小的代码抱有很高的期望。 首先,正确性!实现得都不正确,那还搞毛啊,其他的小问题肯定谈都不用谈了,直接out!正确性要注意的地方,每个函数的功能起码要了解(memmove等),边界的检查不能出错;返回值也是要注意的地方。 其 次,assert不能少!对指针有效性的检查是非常必要的,特别是在memcpy中,存在两个assert,分别检...原创 2019-03-06 11:11:58 · 257 阅读 · 0 评论 -
【编程练习题】从一百亿条地址数据中获取数量最多的Top10【热搜】-- MapReduce
场景哈希分治法这是一个 ip 地址 127.0.0.1假设有100亿个这样的 ip 地址存在文件中这个文件大小大约是 100GB问题:要统计出100亿个 ip 中,重复出现次数最多的前10个分析100GB 几乎不可能一次加载进内存进行操作,所以必须要拆分那么可以利用分治的思想,把规模大的问题化小,然后解决各个小的问题,最后得出结果。实现思路ipv4 地址是一个...原创 2019-03-01 14:55:35 · 2904 阅读 · 0 评论 -
strcpy及memcpy的内存重叠处理
strcpy和memcpy同是一个类型的函数,但实质上却是不同的,他们的原型分别为:char *strcpy(char *dest, const char *src);void *memcpy(void *dest, const void *src, size_t count);当我们使用这两个函数时都会出现同样一个问题,内存重叠。那么我们就来分析一下内存重叠是如何产的。现在假设有c...原创 2019-02-28 17:04:13 · 850 阅读 · 0 评论 -
【编程练习题】用C或C++实现void reverse( char* str)函数,即反转一个null结尾的字符串,不分配额外空间,就地反转
void reverseLHC( char *str ){ char* end = str; char tmp; if (str) { while(*end) { //找出字符串末尾 ++end; } --end; //回退一个字符,最后一个为null字符 //从字符串首尾开始交互两个字符,直至两个指针在中间碰头 while(str < end)...原创 2019-03-06 11:50:36 · 750 阅读 · 0 评论 -
【编程练习题】将一个字符串中的空格替换成20%
/*题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。*//*分析将长度为1的空格替换为长度为3的“%20”,字符差的长度变长。如果允许我们开辟一个新的数组来存放替换空格后的字符串,那么这道题目就非常简 单。设置两个指针分别指向新旧字符串首元素,遍历原字符串...原创 2019-03-06 15:07:12 · 1039 阅读 · 0 评论 -
【编程练习题】利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能
题目描述利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。给定一个string iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。测试样例"aabccccca...原创 2019-03-06 15:35:26 · 3370 阅读 · 0 评论