## Algorithm

Problem Name: 423. Reconstruct Original Digits from English

Given a string `s` containing an out-of-order English representation of digits `0-9`, return the digits in ascending order.

Example 1:

```Input: s = "owoztneoer"
Output: "012"
```

Example 2:

```Input: s = "fviefuro"
Output: "45"
```

Constraints:

• `1 <= s.length <= 105`
• `s[i]` is one of the characters `["e","g","f","i","h","o","n","s","r","u","t","w","v","x","z"]`.
• `s` is guaranteed to be valid.

## Code Examples

### #1 Code Example with Java Programming

```Code - Java Programming```

``````
class Solution {
public String originalDigits(String s) {
int[] count = new int[10];
for (int i = 0; i  <  s.length(); i++){
char c = s.charAt(i);
if (c == 'z') count[0]++;
if (c == 'w') count[2]++;
if (c == 'x') count[6]++;
if (c == 's') count[7]++; //7-6
if (c == 'g') count[8]++;
if (c == 'u') count[4]++;
if (c == 'f') count[5]++; //5-4
if (c == 'h') count[3]++; //3-8
if (c == 'i') count[9]++; //9-8-5-6
if (c == 'o') count[1]++; //1-0-2-4
}
count[7] -= count[6];
count[5] -= count[4];
count[3] -= count[8];
count[9] = count[9] - count[8] - count[5] - count[6];
count[1] = count[1] - count[0] - count[2] - count[4];
StringBuilder sb = new StringBuilder();
for (int i = 0; i  < = 9; i++){
for (int j = 0; j  <  count[i]; j++){
sb.append(i);
}
}
return sb.toString();
}
}
``````
Copy The Code &

Input

cmd
s = "owoztneoer"

Output

cmd
"012"

### #2 Code Example with Javascript Programming

```Code - Javascript Programming```

``````
const originalDigits = function(s) {
const count = new Array(10).fill(0);
for (let i = 0; i  <  s.length; i++) {
let c = s.charAt(i);
if (c === "z") count[0]++;
if (c === "w") count[2]++;
if (c === "x") count[6]++;
if (c === "s") count[7]++; //7-6
if (c === "g") count[8]++;
if (c === "u") count[4]++;
if (c === "f") count[5]++; //5-4
if (c === "h") count[3]++; //3-8
if (c === "i") count[9]++; //9-8-5-6
if (c === "o") count[1]++; //1-0-2-4
}
count[7] -= count[6];
count[5] -= count[4];
count[3] -= count[8];
count[9] = count[9] - count[8] - count[5] - count[6];
count[1] = count[1] - count[0] - count[2] - count[4];
let ans = "";
for (let i = 0; i  < = 9; i++) {
ans += `\${i}`.repeat(count[i]);
}
return ans;
};
``````
Copy The Code &

Input

cmd
s = "owoztneoer"

Output

cmd
"012"