
字符串操作
文章平均质量分 63
空空大人
这个作者很懒,什么都没留下…
展开
-
字符串循环移位
字符串循环移位,要考虑移位的位数是否超过了字符串的长度。 代码: //循环左移n位 void loopmove1(char* str,int n) { if(NULL == str) return; int len = strlen(str); int num = n % len; for(int i = 0;i < n原创 2013-09-12 20:24:33 · 1054 阅读 · 0 评论 -
整型与字符型之间转化
整数转化为字符串 1、可以使用itoa函数(注意,这个函数时在stdlib库中) char *itoa(int value, char *string, int radix); value: 被转换的整数 string: 转换后储存的字符数组 radix: 转换进制数,如2,8,10,16 进制等 #include #include原创 2013-09-12 17:08:06 · 1838 阅读 · 0 评论 -
第一次只出现一次的字符(程序员面试题精选100题)
题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。 分析:这道题是2006年google的一道笔试题。 方法一: 最直观的想法是从头开始扫描这个字符串中的每个字符。当访问到某字符时拿这个字符和后面的每个字符相比较,如果在后面没有发现重复的字符,则该字符就是只出现一次的字符。如果字符串有n个字符,每个字符可能与后面的O(n)个字符相转载 2013-09-16 15:49:25 · 3052 阅读 · 2 评论 -
对称子字符串的最大长度(程序员面试题精选100题)
题目:输入一个字符串,输出该字符串中对称的子字符串的最大长度。比如输入字符串“google”,由于该字符串里最长的对称子字符串是“goog”,因此输出4。 分析:可能很多人都写过判断一个字符串是不是对称的函数,这个题目可以看成是该函数的加强版。 引子:判断字符串是否对称 要判断一个字符串是不是对称的,不是一件很难的事情。我们可以先得到字符串首尾转载 2013-09-16 09:18:26 · 1496 阅读 · 0 评论 -
在字符串中删除特定的字符(程序员面试题精选100题)
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。 分析:这是一道微软面试题。在微软的常见面试题中,与字符串相关的题目占了很大的一部分,因为写程序操作字符串能很好的反映我们的编程基本功。 基本思路:在第一个字符串中拿到一个字符,在第二个字符串中转载 2013-09-16 16:19:00 · 1299 阅读 · 0 评论 -
翻转句子中单词的顺序(程序员面试题精选100题)
题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。 例如输入“I am a student.”,则输出“student. a am I”。 分析:由于编写字符串相关代码能够反映程序员的编程能力和编程习惯,与字符串相关的问题一直是程序员笔试、面试题的热门题目。本题也曾多次受到包括微软在内的大量公司的青睐。转载 2013-09-16 17:10:21 · 870 阅读 · 0 评论 -
字符串中单词的个数(状态机的使用)
题目:统计一段由字符和空格组成的字符串中有多少单词 分析:面试环节中,考官中意的一道题,之所以问到这个题目,目的是要知道你对状态机了解多少。 具体过程 从题目上看,如果对一个字符串进行处理,那么可以有下面几种情形:初始状态,字符状态,空格状态,结束状态。那么这几种状态之间应该怎么迁移呢? 1、原创 2013-09-22 14:42:21 · 1192 阅读 · 0 评论