Fix the deconstructor of linkedlist_queue.cpp

pull/423/head
krahets 2 years ago
parent fcdc96e03d
commit 0840bc2043

@ -13,7 +13,7 @@ int digit(int num, int exp) {
} }
/* 计数排序(根据 nums 第 k 位排序) */ /* 计数排序(根据 nums 第 k 位排序) */
void countSort(int nums[], int size, int exp) { void countingSort(int nums[], int size, int exp) {
// 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶 // 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶
int *bucket = (int *) malloc((sizeof(int) * 10)); int *bucket = (int *) malloc((sizeof(int) * 10));
// 借助桶来统计 0~9 各数字的出现次数 // 借助桶来统计 0~9 各数字的出现次数
@ -57,7 +57,7 @@ void radixSort(int nums[], int size) {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// 即 exp = 10^(k-1) // 即 exp = 10^(k-1)
countSort(nums, size, exp); countingSort(nums, size, exp);
} }
int main() { int main() {

@ -27,7 +27,7 @@ public:
/* 析构方法 */ /* 析构方法 */
~LinkedListDeque() { ~LinkedListDeque() {
// 释放内存 // 遍历链表删除结点,释放内存
DoublyListNode *pre, *cur = front; DoublyListNode *pre, *cur = front;
while (cur != nullptr) { while (cur != nullptr) {
pre = cur; pre = cur;

@ -20,8 +20,8 @@ public:
} }
~LinkedListQueue() { ~LinkedListQueue() {
delete front; // 遍历链表删除结点,释放内存
delete rear; freeMemoryLinkedList(front);
} }
/* 获取队列的长度 */ /* 获取队列的长度 */

@ -19,6 +19,7 @@ public:
} }
~LinkedListStack() { ~LinkedListStack() {
// 遍历链表删除结点,释放内存
freeMemoryLinkedList(stackTop); freeMemoryLinkedList(stackTop);
} }

@ -11,7 +11,7 @@ int digit(int num, int exp) {
} }
/* 计数排序(根据 nums 第 k 位排序) */ /* 计数排序(根据 nums 第 k 位排序) */
void countSort(List<int> nums, int exp) { void countingSort(List<int> nums, int exp) {
// 0~9 10 // 0~9 10
List<int> bucket = List<int>.filled(10, 0); List<int> bucket = List<int>.filled(10, 0);
int n = nums.length; int n = nums.length;
@ -49,7 +49,7 @@ void radixSort(List<int> nums) {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// exp = 10^(k-1) // exp = 10^(k-1)
countSort(nums, exp); countingSort(nums, exp);
} }
/* Driver Code */ /* Driver Code */

@ -13,7 +13,7 @@ func digit(num, exp int) int {
} }
/* 计数排序(根据 nums 第 k 位排序) */ /* 计数排序(根据 nums 第 k 位排序) */
func countSort(nums []int, exp int) { func countingSort(nums []int, exp int) {
// 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶 // 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶
bucket := make([]int, 10) bucket := make([]int, 10)
n := len(nums) n := len(nums)
@ -56,6 +56,6 @@ func radixSort(nums []int) {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// 即 exp = 10^(k-1) // 即 exp = 10^(k-1)
countSort(nums, exp) countingSort(nums, exp)
} }
} }

@ -16,7 +16,7 @@ public class radix_sort {
} }
/* 计数排序(根据 nums 第 k 位排序) */ /* 计数排序(根据 nums 第 k 位排序) */
static void countSort(int[] nums, int exp) { static void countingSort(int[] nums, int exp) {
// 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶 // 十进制的各位数字范围为 0~9 ,因此需要长度为 10 的桶
int[] bucket = new int[10]; int[] bucket = new int[10];
int n = nums.length; int n = nums.length;
@ -55,7 +55,7 @@ public class radix_sort {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// 即 exp = 10^(k-1) // 即 exp = 10^(k-1)
countSort(nums, exp); countingSort(nums, exp);
} }
public static void main(String[] args) { public static void main(String[] args) {

@ -11,7 +11,7 @@ func digit(num: Int, exp: Int) -> Int {
} }
/* nums k */ /* nums k */
func countSort(nums: inout [Int], exp: Int) { func countingSort(nums: inout [Int], exp: Int) {
// 0~9 10 // 0~9 10
var bucket = Array(repeating: 0, count: 10) var bucket = Array(repeating: 0, count: 10)
let n = nums.count let n = nums.count
@ -54,7 +54,7 @@ func radixSort(nums: inout [Int]) {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// exp = 10^(k-1) // exp = 10^(k-1)
countSort(nums: &nums, exp: exp) countingSort(nums: &nums, exp: exp)
} }
} }

@ -12,7 +12,7 @@ fn digit(num: i32, exp: i32) i32 {
} }
// nums k // nums k
fn countSort(nums: []i32, exp: i32) !void { fn countingSort(nums: []i32, exp: i32) !void {
// 0~9 10 // 0~9 10
var mem_arena = std.heap.ArenaAllocator.init(std.heap.page_allocator); var mem_arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
// defer mem_arena.deinit(); // defer mem_arena.deinit();
@ -62,7 +62,7 @@ fn radixSort(nums: []i32) !void {
// k = 2 -> exp = 10 // k = 2 -> exp = 10
// k = 3 -> exp = 100 // k = 3 -> exp = 100
// exp = 10^(k-1) // exp = 10^(k-1)
try countSort(nums, exp); try countingSort(nums, exp);
} }
} }

Loading…
Cancel
Save