Rust: 逆序输出&str
来源:互联网 发布:手机数据可以恢复吗 编辑:程序博客网 时间:2024/06/02 13:12
逆序输出,本来是很简单的。
比如:对于一个vector(), 可以用reverse().
let mut r = [1, 2, 3]; r.reverse(); # r =[3,2,1] let mut s = ["a","b","c"]; s.reverse(); # s =["c","b","a"]
但需要注意!!!!
let mut s = ["a","b","c"]; # [1,2,3]也一样! let vs =s.reverse(); # vs =();
一、对于“world”=>”dlrow”?
是否可用reverse()? 不可以直接用。
let s = "abcd".to_string(); #或 s="abcd"也一样。s.reverse();# error!
rev()? 情况也一样。
let s = "abcd".to_string(); #或 s="abcd"也一样。s.rev();# error!
1、笨办法
fn solution(phrase: &str) -> String { let data = phrase .chars() .into_iter() .map(|x| x.to_string()) .collect::<Vec<_>>(); let len = data.len(); let mut v: Vec<String> = Vec::new(); for i in 0..len { let temp = data.get(len - i - 1).unwrap(); v.push(temp.to_string()); } let r = v.join(""); r.to_string()}
2、简洁的方法
fn solution(phrase: &str) -> String { phrase.chars().rev().collect()}
二、rev()、reverse() 对于&str
关于rev()的用法
let s = "abcd"; let rs = s.chars().rev(); #let rs = s.chars().reverse(); # =>error! println!("rev2 :{:?}", rs);
运行结果:
rev2 :Rev { iter: Chars { iter: Iter([97, 98, 99, 100]) } }
阅读全文
0 0
- Rust: 逆序输出&str
- Rust: String 与 &str
- Rust 格式输出
- String VS &str 在Rust函数中
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- 逆序输出
- str长度的输出
- 创建一个接受String或&str的Rust函数
- java中的swing组件、主要三大布局管理器的应用
- NoSQL概述(已迁移)
- LU三角分解(matlab程序)
- 关于微机原理个人的一些总结(1)
- jquery-easyui-datagrid,弹框
- Rust: 逆序输出&str
- FAST角点检测原理及其C/C++实现
- 雅可比迭代法解线性方程组(matlab程序)
- KNN(NearestNeighbor)临近算法,自然语言讲解
- I2C、SPI和UART、
- Mybatis学习笔记一
- Struts2自动装配(+入门)
- 爬虫基础-- 正则基础
- LIS O(n log n) 详解