摘要:
"463 整数排序" 给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。 样例 对于数组 [3, 2, 1, 4, 5], 排序后为:[1, 2, 3, 4, 5]。 标签 排序 思路 使用插入排序,不过这题的初始代码的形参没使用引用方式,要主动修改 cod 阅读全文
摘要:
"457 经典二分查找问题" 在一个排序数组中找一个数,返回该数出现的任意位置,如果不存在,返回 1 样例 给出数组 [1, 2, 2, 4, 5, 5]. 对于 target = 2, 返回 1 或者 2. 对于 target = 5, 返回 4 或者 5. 对于 target = 6, 返回 1 阅读全文
摘要:
"453 将二叉树拆成链表" 将一棵二叉树按照前序遍历拆解成为一个假链表。所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针。 注意事项 不要忘记将左儿子标记为 null,否则你可能会得到空间溢出或是时间溢出。 样例 挑战 不使用额外的空间耗费。 标签 二叉树 深度优先搜 阅读全文
摘要:
"452 删除链表中的元素" 删除链表中等于给定值val的所有节点。 样例 给出链表 1 2 3 3 4 5 3, 和 val = 3, 你需要返回删除3之后的链表:1 2 4 5。 标签 链表 思路 删除结点,使用 3 个指针即可,分别指向待删节点,待删节点前节点,待删节点后节点 code 阅读全文
摘要:
"451 两两交换链表中的节点" 给一个链表,两两交换其中的节点,然后返回交换后的链表。 样例 给出 1 2 3 4, 你应该返回的链表是 2 1 4 3。 挑战 你的算法只能使用常数的额外空间,并且不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 标签 链表 思路 两两交换结点 cod 阅读全文
摘要:
"450 K组翻转链表" 给你一个链表以及一个k,将这个链表从头指针开始每k个翻转一下。 链表元素个数不是k的倍数,最后剩余的不用翻转。 样例 给出链表 1 2 3 4 5 k = 2, 返回 2 1 4 3 5 k = 3, 返回 3 2 1 4 5 标签 链表 脸书 思路(使用栈,空间复杂度O( 阅读全文