各位大佬帮忙看下
能不能帮我写一个用新建数组的方法去重,不要用indexof.谢谢! 仅限于ascii吗的字符串
int qucong(char * des,char * src)
{
char letter={0};
int i=0,j=0;
for(i=0,j=0;src;i+=1)
{
if(0==letter])
{
des=src;
letter]=1;
j+=1;
}
}
return j;
}
jhq999 发表于 2022-11-29 10:58
仅限于ascii吗的字符串
大佬,是我没说清楚!
是一维数字数组 本帖最后由 jhq999 于 2022-11-29 11:31 编辑
int qucong(int *des,int *src,int n)
{
int ishav={0};
int i,j,k,p;
for(i=0,j=0,p=0;i<n;i+=1)
{
for(k=0;k<p;k+=1)
{
if(src==ishav)break;
}
if(k==p)des=ishav=src;
}
return j;
}
structNODE
{
int val;
structNODE * left,*right;
};
int qucong(int *des,int *src,int n)
{
structNODE *nodes=(structNODE *)calloc(n,sizeof(structNODE ));
int i,j,pt=0,flag;
nodes.val=des=src;
pt=1;
for(i=1,j=1;i<n;i+=1)
{
structNODE* p=nodes;
flag=0;
while(src!=p->val)
{
if(src<p->val)
{
if(p->left)p=p->left;
else
{
nodes.val=src;
p->left=&nodes;
flag=1;
break;
}
}
else
{
if(p->right)p=p->right;
else
{
nodes.val=src;
p->right=&nodes;
flag=1;
break;
}
}
}
if(flag)des=src;
}
free(nodes);
} 本帖最后由 jackz007 于 2022-11-29 12:18 编辑
#include <stdio.h>
int foo(int e[] , int d[] , int n)
{
int c , i , j ;
e = d ;
for(c = i = 1 ; i < n ; i ++) {
for(j = 0 ; j < c ; j ++) if(e == d) break ;
if(j == c) e = d ;
}
return c ;
}
int main(void)
{
int d , e , i , k , n ;
scanf("%d" , & n) ;
for(i = 0 ; i < n ; i ++) scanf("%d" , & d) ;
k = foo(e , d , n) ;
printf("%d" , e) ;
for(i = 1 ; i < k ; i ++) printf(" %d" , e) ;
printf("\n") ;
}
编译运行实况:
D:\\C>g++ -o x x.c
D:\\C>x
15
1 2 3 4 5 1 3 5 7 9 2 4 6 8 10
1 2 3 4 5 7 9 6 8 10
D:\\C>x
15
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1
D:\\C> 感谢两位大佬,我先研究下,稍后给最佳
页:
[1]