题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 限制: 1 <= 数组长度 <= 50000 解题思路: 由于要寻找的是出现次数超 ...
分类:
编程语言 时间:
2020-07-17 14:03:08
阅读次数:
55
//给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ? n/2 ? 的元素。 // // 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 // // // // 示例 1: // // 输入: [3,2,3] //输出: 3 // // 示例 2: // ...
分类:
其他好文 时间:
2020-07-15 15:32:02
阅读次数:
59
把一个排列看成若干个环(i连向p[i])。每次操作,相当于拆掉一个环,或者合并两个环。把所有环,分成同色环和非同色环两类。非同色环,总能用环长-1次操作消掉。同色环可以和别的环合并,变成非同色环。这个过程需要贪心:每次合并两个出现次数最多的颜色的同色环。 ...
分类:
其他好文 时间:
2020-07-14 19:56:36
阅读次数:
72
题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2 来源:力扣(LeetCode)链接:https://leetcode-cn.com/p ...
分类:
编程语言 时间:
2020-07-14 18:05:43
阅读次数:
69
js-查找字符串中出现次数最多的字符 var str = "abcdffffggj"; var obj = {}; for(var i = 0; i < str.length; i++){ //charAt() 方法可返回指定位置的字符。 if(!obj[str.charAt(i)]){ obj[s ...
分类:
编程语言 时间:
2020-07-13 21:21:35
阅读次数:
73
501. 二叉搜索树中的众数 描述: 思路:中序遍历。 503. 下一个更大元素 II 描述: 思路:单调栈。 506. 相对名次 描述: 思路:先拍戏。再替换。 508. 出现次数最多的子树元素和 描述: 思路:后序遍历。否则叶子节点就遍历了很多次。通过hash存《和,次数》 513. 找树左下角 ...
分类:
其他好文 时间:
2020-07-13 13:31:19
阅读次数:
83
题目描述: 给定两个数组,编写一个函数来计算它们的交集。 今日学习: 1.啊!美好的简单题! 题解: 1.暴力法,开始居然忘了indexOf 2.暴力法,利用indexOf一次循环 3.排序法,双指针移动 4.hash法,列出较短数组元素的出现次数,遍历较长数组去比较 /** * @param {n ...
分类:
编程语言 时间:
2020-07-13 11:23:35
阅读次数:
75
输入格式: 输入在一行中给出一个长度不超过 1000 的字符串。字符串由 ASCII 码表中任意可见字符及空格组成,至少包含 1 个英文字母,以回车结束(回车不算在内)。 输出格式: 在一行中输出出现频率最高的那个英文字母及其出现次数,其间以空格分隔。如果有并列,则输出按字母序最小的那个字母。统计时 ...
分类:
其他好文 时间:
2020-07-13 11:19:37
阅读次数:
52
package com.hu; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.HashMap; import java.util.Map; ...
分类:
其他好文 时间:
2020-07-09 19:35:38
阅读次数:
62
这道题的题意是,给出一个一维数组,数组中的元素只可能是0,1,2,分别表示红色、白色和蓝色。 我们需要做一个排序,使得0全部在数组前面,1在中间,2在后面。 (不过不能用sort函数) 方法一(常数空间,非一趟扫描) 可以用三个变量分别记录红色、白色和蓝色的出现次数,然后根据出现的次数,修改数组即可 ...
分类:
其他好文 时间:
2020-07-05 01:00:37
阅读次数:
80