cubegao

Swift.包含min函数的栈

题目描述:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 `import Foundationclass For21Solution { ...` 算法思想:利用数组模拟一个栈。 github地址:htt ...

Swift.顺时针打印矩阵

题目描述:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. `import ...

Swift.二叉树的镜像

题目描述:操作给定的二叉树,将其变换为源二叉树的镜像。 `import Foundationclass For19Solution { fun...` 算法思想:递归,利用栈结构。交换左右孩子,然后递归访问左右孩子。 github地址:https://github. ...

Swift.树的子结构

题目描述:输入两颗二叉树A,B,判断B是不是A的子结构。 `import Foundationclass For18Solution { fun...` 算法思想:遍历到最后,节点为空那就是子结构,相反不是。 github地址:https://github.com/ ...

Swift.合并两个排序的链表

题目描述: `import Foundationclass For17Solution { fun...` 算法思想:有点类似合并两个排序数组。递归的话,相对好理解一点。 github地址:https://github.com/cubegao/LeetCode

Swift.链表中倒数第K个节点

题目描述:链表中倒数第 K 个结点。 `import Foundationclass For15Solution { fun...` 算法思想:设链表的长度为 N。设置两个指针 P1 和 P2,先让 P1 移动 K 个节点,则还有 N - K 个节点可以移动。此时让 ...

Swift.反转链表

题目描述:1->2->3->4,4->3->2->1 `import Foundationclass For16Solution { fun...` 算法思想:迭代的话,使用使用头插法。 github地址:https://gith ...

Swift.调整数组顺序使奇数位于偶数前面

题目描述:调整数组顺序使奇数位于偶数前面。 `import Foundationclass For14Solution { fun...` 算法思想:两个指针一个从头一个尾,然后奇数偶数交换位置。 github地址:https://github.com/cubega ...

Swift.在0(1)时间删除链表节点

题目描述:在 O(1) 时间内删除链表节点 `import Foundationclass For13Solution { fun...` 算法思想:① 如果该节点不是尾节点,那么可以直接将下一个节点的值赋给该节点,然后令该节点指向下下个节点,再删除下一个节点,时间 ...

Swift.打印1到最大的n位数

题目描述:输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数即 999。 `import Foundationclass For12Solution { fun...` 算法思想:由于 n 可能会非 ...
Prev Next