题解 | #提取不重复的整数#

提取不重复的整数

http://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1

#include <stdio.h>
#include <string.h>

int num[1000],len,i,j,k;
char str[1000];

int main()
{    
        gets(str);
        len=strlen(str);
        //字符串转换成整型
        for(i=0;i<len;i++)
        {
            num[i]=(int)(str[i]-48);
        }
        //数组去重
        for(i=len-1;i>=0;i--)
        {
            for(j=i-1;j>=0;j--)
            {
                if(num[j] == num[i])
                {
                    for(k=j;k<len;k++)
                    {
                        num[k]=num[k+1];
                    }
                    len--;
                    j--;
                }
            }
        }
             //倒叙输出
             for(i=0;i<len;i++)
             {
                 printf("%d",num[len-i-1]);
             }

    return 0;
}
全部评论
三层for, 这去重算法效率不行
点赞 回复
分享
发布于 2022-03-05 13:04
len--; j--; 应该改成 len--; i--;
点赞 回复
分享
发布于 2022-06-28 18:10
联易融
校招火热招聘中
官网直投
直接scanf (%d)多好 这又字符转int
点赞 回复
分享
发布于 2022-10-12 19:39 上海

相关推荐

11 4 评论
分享
牛客网
牛客企业服务