C 删除数组中的相同项
我正在开发一个可以从字符数组中删除重复项的函数。问题是该函数适用于一定数量的字符,但如果数组中包含大量术语,则程序无法正常工作。此外,如果重复的术语彼此相邻,则程序不会将其删除C 删除数组中的相同项,c,arrays,C,Arrays,我正在开发一个可以从字符数组中删除重复项的函数。问题是该函数适用于一定数量的字符,但如果数组中包含大量术语,则程序无法正常工作。此外,如果重复的术语彼此相邻,则程序不会将其删除 void delete_repeats(char array[],int size){ for(int i = 0; i < size; i++){ for(int j = i + 1; j < size; j++){ if(array[i] == array[
void delete_repeats(char array[],int size){
for(int i = 0; i < size; i++){
for(int j = i + 1; j < size; j++){
if(array[i] == array[j] || !((array[j] >= 97) && (array[j] <= 122))){
for(int k = j; k < size; k++){
array[k] = array[k + 1];
size--;
}
}
}
}
}
void delete_重复(字符数组[],整数大小){
对于(int i=0;i 如果(array[i]==array[j]| |!((array[j]>=97)和&(array[j]您太频繁地减小大小。移动数组内容后减小大小。
。将大小从该循环移到外循环:
void delete_repeats(char array[],int size){
for(int i = 0; i < size; i++){
for(int j = i + 1; j < size; j++){
if(array[i] == array[j] || !((array[j] >= 97) && (array[j] <= 122))){
for(int k = j; k < size; k++){
array[k] = array[k + 1];
}
size--;
}
}
}
}
INPUT: Mary had a little lamb
OUTPUT: Maryhdlitemb
void delete_重复(字符数组[],整数大小){
对于(int i=0;i 如果(数组[i]=数组[j],((数组[j]>97))&(数组),现在写什么C,在标题和标记C++ +什么?请下定决心,你写的语言。至少,用户没有标记它的C和C++。哦,玛丽有一个“羔羊”,而不是“灯”。如果你使用C++,考虑<代码> STD::SET/COME >,我一直都在想玛丽和羔羊。