go-algorithm

command module
v0.0.0-...-6d07767 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 21, 2025 License: MIT Imports: 0 Imported by: 0

README

go-algorithm

golang algorithm practice

测试生成

cd xxx
# 初始化
ginkgo bootstrap
# 添加单元测试
ginkgo generate xxx
# 运行测试
ginkgo

50_algorithm(50 个必会的数据结构与算法)

  • 01_dynamic_array:实现一个支持动态扩容的数组
  • 02_ordered_array:实现一个大小固定的有序数组,支持动态增删改操作
  • 03_merge_sorted_array:合并两个有序数组
  • 04_circular_linked_list:循环链表实现
  • 04_doubly_linked_list:双向链表实现
  • 04_singly_linked_list:单链表实现
  • 05_reverse_list:反转链表
  • 06_merge_sorted_linked_list:合并两个有序链表
  • 07_middle_node:链表的中间结点
  • 08_stack_on_array:数组实现一个顺序栈
  • 09_stack_on_list:链表实现一个顺序栈
  • 10_simply_browser:编程模拟实现一个浏览器的前进、后退功能
  • 11_queue_on_array:数组实现一个顺序队列
  • 12_queue_on_list:链表实现一个链式队列
  • 13_circular_queue:实现一个循环队列
  • 14_permutations:全排列
  • 15_sort:排序算法
  • 22_binary_tree:二叉树的前、中、后、层序遍历

structure (实现的各种数据结构)

  • binary_tree:二叉树
  • binary_search_tree:二叉查找树
  • linked_list:链表
  • sq_queue:顺序队列
  • sq_stack:顺序栈

leetcode

  • 01_tow_sum: 1. 两数之和
  • 02_contains_duplicate:217. 存在重复元素
  • 03_sell_stock:121. 买卖股票的最佳时机
  • 04_n_queens:51. N 皇后
  • 05_permutations:46. 全排列
  • 06_assign_cookies:455. 分发饼干
  • 07_product_of_array_except_self:238. 除自身以外数组的乘积
  • 08_valid_parentheses:20. 有效的括号
  • 09_valid_palindrome:125. 验证回文串
  • 10_invert_binary_tree:226. 翻转二叉树
  • 11_valid_anagram:242. 有效的字母异位词
  • 12_binary_search:704. 二分查找
  • 13_flood_fill:733. 图像渲染
  • 14_lowest_common_ancestor_of_bst:235. 二叉搜索树的最近公共祖先
  • 15_balanced_binary_tree:110. 平衡二叉树
  • 16_linked_list_cycle:141. 环形链表
  • 17_implement_queue_using_stacks:232. 用栈实现队列
  • 18_first_bad_version:278. 第一个错误的版本
  • 19_ransom_note:383. 赎金信
  • 20_climbing_stairs:70. 爬楼梯
  • 21_longest_palindrome:409. 最长回文串
  • 22_majority_element:169. 多数元素
  • 23_remove_duplicates:26. 删除有序数组中的重复项
  • 24_move_zeroes:283. 移动零
  • 25_remove_element:27. 移除元素
  • 26_remove_duplicates_ii:80. 删除有序数组中的重复项 II
  • 27_two_sum_ii:167. 两数之和 II - 输入有序数组
  • 28_reverse_string:344. 反转字符串
  • 29_squares_of_sorted_array:977. 有序数组的平方
  • 30_container_with_most_water:11. 盛最多水的容器
  • 31_jump_game:55. 跳跃游戏
  • 32_jump_game_ii:45. 跳跃游戏 II
  • 33_candy:135. 分发糖果
  • 34_reverse_linked_list:206. 反转链表
  • 35_reverse_linked_list_ii:92. 反转链表 II

prompt

@Web @https://leetcode.cn/problems/move-zeroes/description/ 请在 leetcode 目录生成 10_xxx 目录,里面包含两个文件:xxx.go 和 xxx_test.go。分别是算法实现和对应的测试用例。 算法实现由我来实现,你只需要将函数定义出来就可以了;测试用例你需要提供尽可能完整的。请直接生成可以Apply的文件。

中等题: 142 环形链表 II(找到环的入口) 19 删除链表的倒数第 N 个结点 2 两数相加 86 分隔链表 143 重排链表 148 排序链表 82 删除排序链表中的重复元素 II 24 两两交换链表中的节点 61 旋转链表 147 对链表进行插入排序 138 复制带随机指针的链表 困难题: 23 合并K个升序链表 2. 25 K 个一组翻转链表

建议刷题顺序: 接着是 19(快慢指针的应用) 后面按照个人兴趣选择

每类题目的关键点: 反转类:206, 92, 25 快慢指针:141, 142, 19 合并类:21, 23 排序类:148, 147 特殊指针:138

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL