Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 66.4MB ·虚拟内存 1300.5MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
Rust语言编程题目:排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。这道题就来考察下排序,对下面的10个数进行排序。
[1, 4, 3, 6, 8, 2, 9, 0, 7, 5]
程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即用第二个元素与后8个进行比较,并进行交换。也可以利用插入排序法等等。
输出格式:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
知识点:数据结构简单排序(选择排序,插入排序)
fn main() { let mut vec = vec![1, 4, 3, 6, 8, 2, 9, 0, 7, 5]; // test37_insert_sort(&mut vec); test37_select_sort(&mut vec); println!("{:?}", vec); } /// 插入排序 fn test37_insert_sort(vec: &mut Vec<i32>) { for i in 0..vec.len() { let mut j = i; while j > 0 { if vec[j] < vec[j - 1] { // 交换值 let temp = vec[j]; vec[j] = vec[j - 1]; vec[j - 1] = temp; } j -= 1; } } } /// 选择排序 fn test37_select_sort(vec: &mut Vec<i32>) { for i in 0..vec.len() - 1 { let mut mix_index = i; for j in i + 1..vec.len() { if vec[mix_index] > vec[j] { mix_index = j; } } // 如果找到了比当前小的值 // 交换 if mix_index != i { let temp = vec[i]; vec[i] = vec[mix_index]; vec[mix_index] = temp; } } }
程序执行结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Rust语言编程题目:行列式在数学中,是一个函数,其定义域为det的矩阵A,取值为一个标量,写作det(A)或 | A | 。无论是在线性代数、多项式理论,还是在微积分学中(比如说换元积分法中) ...