leetCode 之 Longest Common Prefix
2015-06-07 22:06
204 查看
LeetCode : Longest Common Prefix
题目原意:将字符串数组中最长的共同字符前缀返回。
注意: 判断空字符”“与NULL的情况。并在程序中加以区分判定
把题意理解正确了,本题就不存在什么难处了。
代码如下(leetCode 测得运行时间为0ms):
题目原意:将字符串数组中最长的共同字符前缀返回。
注意: 判断空字符”“与NULL的情况。并在程序中加以区分判定
把题意理解正确了,本题就不存在什么难处了。
代码如下(leetCode 测得运行时间为0ms):
char *longestCommonPrefix(char** strs, int strsSize) { char *a = NULL; int i, j, k; int shortLen ; if (strsSize < 1) //!< 空字符串"" { return ""; } if (strs == NULL) //!< NULL指针 { printf("The string is NULL"); return NULL; } shortLen = strlen(strs[0]); //!< 保存前缀的长度 if (strsSize == 1) { return strs[0]; } for (j = 1; j < strsSize; ++j) //!< 依次比较每一个字符串 { k = 0; for (i = 0; i < shortLen; ++i) //!< 比较相同位置的字符 { if (strs[0][i] == strs[j][i]) { ++k; } else { shortLen = (k >= shortLen) ? shortLen : k; //!< 保存最小的前缀长度 break; } } } a = malloc(sizeof(char)*(shortLen+1)); for (i = 0; i < shortLen; ++i) { a[i] = strs[0][i]; } a[i] = '\0'; return a; }
相关文章推荐
- POJ3415:Common Substrings(后缀数组+单调栈)
- 增加元数据的未完成页面
- POJ 1273 -Drainage Ditches
- 教育管理系统——android家长客户端
- c++ --> 操作符重载
- 后台和前台交互显示图片及title
- iOS开发—02音乐的播放
- Mac下SecureCRT的安装与破解
- Java IDL介绍
- Linux下安装zookeeper
- 【VB6】文件拖拽技术
- 第三章第46题
- Webstorm 10 for mac osx 注册机,序列号,kegen
- Java 接口和抽象类区别
- iOS开发—01音效的播放
- Android 优化电池使用时间——确定和检测网络状态
- 建立模式对话框显示提示文档
- poj 3723 kruscal,反边取最大生成树。
- ITer创业记录(二)
- 中国剩余定理求解同余线性方程组—(互素和非互素的情况)