Skip to content

Instantly share code, notes, and snippets.

@Fitem
Fitem / main.dart
Last active February 16, 2023 10:00
排序算法
import 'dart:math';
void main() {
List<int> array = [1, 9, 5, 7, 2, 8, 4, 6, 3, 0];
print('${array.join(',')}\n');
// bubbleSort(array);
// selectionSort(array);
// insertSort(array);
// array = mergeSort(array);
// quickSort(array, 0, array.length - 1);
@Fitem
Fitem / main.dart
Last active December 11, 2022 14:00
双链表面试题
void main() {
//创建测试节点
HeroNode heroNode1 = HeroNode(1, "宋江", "及时雨");
HeroNode heroNode2 = HeroNode(2, "卢俊义", "玉麒麟");
HeroNode heroNode3 = HeroNode(3, "吴用", "智多星");
HeroNode heroNode4 = HeroNode(4, "林冲", "豹子头");
//创建链表
DoubleLinkedList doubleLinkedList = DoubleLinkedList();
@Fitem
Fitem / main.dart
Last active December 11, 2022 14:00
单链表面试题
void main() {
//创建测试节点
HeroNode heroNode1 = HeroNode(1, "宋江", "及时雨");
HeroNode heroNode2 = HeroNode(2, "卢俊义", "玉麒麟");
HeroNode heroNode3 = HeroNode(3, "吴用", "智多星");
HeroNode heroNode4 = HeroNode(4, "林冲", "豹子头");
//创建链表
SingleLinkedList singleLinkedList = SingleLinkedList();
@Fitem
Fitem / main.dart
Last active November 30, 2022 10:15
单链表
void main() {
//创建测试节点
HeroNode heroNode1 = HeroNode(1, "宋江", "及时雨");
HeroNode heroNode2 = HeroNode(2, "卢俊义", "玉麒麟");
HeroNode heroNode3 = HeroNode(3, "吴用", "智多星");
HeroNode heroNode4 = HeroNode(4, "林冲", "豹子头");
//创建链表
SingleLinkedList singleLinkedList = SingleLinkedList();
//添加数据
@Fitem
Fitem / main.dart
Last active November 30, 2022 10:14
环形队列
// 思路如下:
// 1. front变量的含义做一个调整:front指向队列的第一个元素front初始值=0
// 2. rear变量的含义做一个调整:rear指向队列的最后一个元素的后一个位置,因为
// 希望空出一个空间作为约定.rear的初始值=0
// 3. 当队列满时,条件是(rear + 1) % maxSize == front[满]
// 4. 队列为空的条件,rear == front [空]
// 5. 队列中有效的数据个数 [rear - front + maxSize] % maxSize
void main() {
// 创建一个队列
CircleArrayQueue queue = CircleArrayQueue(4);
@Fitem
Fitem / main.dart
Last active November 30, 2022 10:14
队列
void main() {
// 创建一个队列
ArrayQueue queue = ArrayQueue(3);
// 显示队列所有数据
queue.showQueue();
// 添加一个数
queue.addQueue(5);
// 添加一个数
@Fitem
Fitem / main.dart
Last active November 30, 2022 10:14
稀疏数组
void main() {
// 创建一个原始的二维数组 11*11
List<List<int>> chessArr1 = [];
for (int i = 0; i < 11; i++) {
List<int> list = [];
for (int j = 0; j < 11; j++) {
list.add(0);
}
chessArr1.add(list);
}