Write a function to find the longest common prefix string amongst an array of strings.
编写一个函数查找最长公共前缀字符串在字符串数组。
//
// LongestCommonPrefix.c
// Algorithms
//
// Created by TTc on 15/6/12.
// Copyright (c) 2015年 TTc. All rights reserved.
//
#include "LongestCommonPrefix.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/**
* 查找最长公共前缀字符串在字符串数组。
*
*/
char*
longestCommonPrefix(char** strs, int strsSize){
int i=0;
int j=0;
int index;
int tempindex=0;
if(strsSize < 1)
return "";
index = (int)strlen(strs[0]);
char *a = (char*)malloc(sizeof(char)*(index+1));
strcpy(a,strs[0]);
for(i = 1;i < strsSize;i++){
tempindex=0;
for(j = 0;j < index;j++){
if(a[j] == strs[i][j]){
tempindex++;
}
else{
a[j] = '\0';
break;
}
}
if (tempindex==0)return ("");
if(tempindex<index)index=tempindex;
}
return a;
}
void
test_longestCommonPrefix(){
char *ss[4] = {"abc","abvcc","asdsd","ab"};
char *result = longestCommonPrefix(ss, 4);
printf("result==%s",result);
}