思路

  • 1.使用字符串方式得到一个整型数据
  • 2.从后往前依次将每个字符转为数字,并存到对应哈希数组中
  • 3.比较哈希数组中之前的值和现在是否相同,不同则打印,相同则跳过【达到去重目的
  • 4.打印完更新哈希表中原来的值
#include<stdio.h>

int main()
{
    char val[1000]={'0'};
    int num[1000]={0};//
    int tmp[1000]={0};//哈希表中原来值设为0,因为输入数字>0
    //得到一个整型
    scanf("%s",&val);
    //将字符串转为数字存到哈希表中
    for(int i=strlen(val)-1; i>=0; i--){
        val[i] = val[i] - '0';//将字符串转为数字,存到原位置
        num[val[i]] = val[i];//将数字存到对应哈希表位置
        
        if(num[val[i]] != tmp[val[i]]){//如果哈希表原来对应位置的值和现在不同,则打印
            printf("%d",num[val[i]]); 
        }
        tmp[val[i]] = num[val[i]];//将原来的值刷新为新值
                   
    }   
       
    return 0;
}