Skip to content

Commit ef844b1

Browse files
authored
feat: add rust solution to lc problem: No.0168 (#1502)
1 parent ff3ab0d commit ef844b1

File tree

3 files changed

+73
-0
lines changed

3 files changed

+73
-0
lines changed

solution/0100-0199/0168.Excel Sheet Column Title/README.md

+26
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,32 @@ class Solution {
9898
}
9999
```
100100

101+
### **Rust**
102+
103+
```rust
104+
impl Solution {
105+
#[allow(dead_code)]
106+
pub fn convert_to_title(column_number: i32) -> String {
107+
let mut ret = String::from("");
108+
let mut column_number = column_number;
109+
110+
while column_number > 0 {
111+
if column_number <= 26 {
112+
ret.push(('A' as u8 + column_number as u8 - 1) as char);
113+
break;
114+
} else {
115+
let mut left = column_number % 26;
116+
left = if left == 0 { 26 } else { left };
117+
ret.push(('A' as u8 + left as u8 - 1) as char);
118+
column_number = (column_number - 1) / 26;
119+
}
120+
}
121+
122+
ret.chars().rev().collect()
123+
}
124+
}
125+
```
126+
101127
### **TypeScript**
102128

103129
```ts

solution/0100-0199/0168.Excel Sheet Column Title/README_EN.md

+26
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,32 @@ class Solution {
8181
}
8282
```
8383

84+
### **Rust**
85+
86+
```rust
87+
impl Solution {
88+
#[allow(dead_code)]
89+
pub fn convert_to_title(column_number: i32) -> String {
90+
let mut ret = String::from("");
91+
let mut column_number = column_number;
92+
93+
while column_number > 0 {
94+
if column_number <= 26 {
95+
ret.push(('A' as u8 + column_number as u8 - 1) as char);
96+
break;
97+
} else {
98+
let mut left = column_number % 26;
99+
left = if left == 0 { 26 } else { left };
100+
ret.push(('A' as u8 + left as u8 - 1) as char);
101+
column_number = (column_number - 1) / 26;
102+
}
103+
}
104+
105+
ret.chars().rev().collect()
106+
}
107+
}
108+
```
109+
84110
### **TypeScript**
85111

86112
```ts
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
impl Solution {
2+
#[allow(dead_code)]
3+
pub fn convert_to_title(column_number: i32) -> String {
4+
let mut ret = String::from("");
5+
let mut column_number = column_number;
6+
7+
while column_number > 0 {
8+
if column_number <= 26 {
9+
ret.push(('A' as u8 + column_number as u8 - 1) as char);
10+
break;
11+
} else {
12+
let mut left = column_number % 26;
13+
left = if left == 0 { 26 } else { left };
14+
ret.push(('A' as u8 + left as u8 - 1) as char);
15+
column_number = (column_number - 1) / 26;
16+
}
17+
}
18+
19+
ret.chars().rev().collect()
20+
}
21+
}

0 commit comments

Comments
 (0)