摘要: 先写下自己的做法吧,虽然违规了。首先是对数组排序,让所有元素按升序排列。之后使用二分法查找,判断的依据是当前节点的索引值+1与当前节点值的大小关系。可以考虑如果不存在重复数,完成排序后的数组,某一节点的值与当前索引值+1应当是保持一致。当数组中出现重复数,该重复数会将大于自己的数的索引向后挤压。通过 阅读全文
posted @ 2021-11-07 21:24 zhaohhhh 阅读(33) 评论(0) 推荐(0)
摘要: 最基本的思路是将数组首先进行排序,然后按照大小分为长度相同或者相差1个的两部分,之后将这两个数组的值插空放置在原数组中。这样的解法有个问题,就是如果两个数组中有相同的数,并且该数的数量到达了所有元素的一般,正序去进行填充就会发生相同元素相邻的问题。而这个问题来源于小的元素在数组开头,如果是大的元素在 阅读全文
posted @ 2021-11-07 17:27 zhaohhhh 阅读(32) 评论(0) 推荐(0)
摘要: 其实就是比较两个数的字符表示拼在一起哪个大,然后用这种判别原则去维护一个大顶堆。本来写了好几十行的判断代码,后来发现可以直接判断a+b和b+a的大小关系,感觉自己像个小丑。贴代码 1 class Solution { 2 public: 3 string largestNumber(vector<i 阅读全文
posted @ 2021-11-07 15:47 zhaohhhh 阅读(31) 评论(0) 推荐(0)