[剑指 Offer 45]把数组排成最小的数
//输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 // // // // 示例 1: // // 输入: [10,2] //输出: "102" // //...
//输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 // // // // 示例 1: // // 输入: [10,2] //输出: "102" // //...
//数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位...
//输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 // // 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,...
//输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 // // 要求时间复杂度为O(n)。 // // // // 示例1: // //...
//如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,...
//输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 // // // // 示例...
//数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 // // // // 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 // // // // 示...
//输入一个字符串,打印出该字符串中字符的所有排列。 // // // // 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 // // // // 示例: // // 输入...
//请实现两个函数,分别用来序列化和反序列化二叉树。 // // 示例: // // 你可以将以下二叉树: // // 1 // / \ // 2 3 // / \ // 4 5 // //序列化为 "[1,2,3,null,null,4,5]" // // 注意...
//输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。 // // // // 为了让您更...
//请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指 //向链表中的任意节点或者 null...
//输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。 // // //...
//输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互...
//请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其...
//从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。 // // // // 例如: //给定二叉树: [3,9,20,null,null,15,7], // // 3 // / \ // 9 20 // / \ // 15...