使用 C++ 删除给定数字中的重复数字
在本文中,我们给定一个数字 n,我们需要删除给定数字中的重复数字。
Input: x = 12224 Output: 124 Input: x = 124422 Output: 1242 Input: x = 11332 Output: 132
在给定的问题中,我们将遍历所有数字并删除重复的数字。
寻找解决方案的方法
在给定的方法中,我们现在将从右到左遍历 n 的所有数字。我们通过对 n 取模 10 并然后将 n 除以 10 来遍历 n 的数字。现在我们的当前数字是 n 模 10。我们用前一个数字检查它。如果数字相等,我们现在遍历 n。如果它们不相似,我们将此数字添加到我们的新数字中,将前一个数字更改为当前数字,并继续循环。
示例
#include <bits/stdc++.h>
#define MOD 1000000007
using namespace std;
int main() {
int n = 1222333232; // given n
int new_n = 0; // new number
int po = 1; // will b multiple of ten for new digits
int prev = -1; // previous digit
int curr; // current digit
while(n) {
curr = n % 10;
if(prev != curr) { // if a digit is not repeated then we go in this block
new_n = new_n + (curr * po); // we add a new digit to new_n
po *= 10;
prev = curr;
}
n /= 10;
}
cout << new_n << "\n";
return 0;
}输出
123232
以上代码的解释
在上述方法中,我们现在只是简单地遍历 n 的数字,当我们的前一个数字和当前数字不匹配时,我们将此类数字添加到我们的新数字中,并且随着我们的数字被添加,我们还增加了 po,它现在用于我们数字的位置,如果我们的当前数字和前一个数字匹配,我们不运行此块并继续循环,直到我们的 n 变成 0。
结论
在本文中,我们解决了一个问题,即删除给定数字中的重复数字。我们还学习了这个问题的 C++ 程序以及我们解决此问题的完整方法(普通方法)。我们可以在其他语言(如 C、Java、Python 和其他语言)中编写相同的程序。我们希望您发现本文有所帮助。
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP