LeetCode 169. Majority Element 题解 ——Java
2017-03-20 19:55
357 查看
题目链接:https://leetcode.com/problems/majority-element/#/solutions
题目要求:找出数组中的主元素
方法一:首先最容易想到的方法是,将数组排序,最中间的数就是主元素。该方法的时间复杂度即为排序的时间复杂度,为O(n logn)
Java代码如下:
public class Solution {
public int majorityElement(int[] nums) {
Arrays.sort(nums);
return nums[nums.length/2];
}
}
方法二:
public class Solution {
public int majorityElement(int[] nums) {
int major = nums[0];
int count = 1;
for (int i = 1; i < nums.length; i++) {
if (count == 0) {
major = nums[i];
count++;
} else if (major == nums[i]) {
count++;
} else {
count--;
}
}
return major;
}
}
题目要求:找出数组中的主元素
方法一:首先最容易想到的方法是,将数组排序,最中间的数就是主元素。该方法的时间复杂度即为排序的时间复杂度,为O(n logn)
Java代码如下:
public class Solution {
public int majorityElement(int[] nums) {
Arrays.sort(nums);
return nums[nums.length/2];
}
}
方法二:
public class Solution {
public int majorityElement(int[] nums) {
int major = nums[0];
int count = 1;
for (int i = 1; i < nums.length; i++) {
if (count == 0) {
major = nums[i];
count++;
} else if (major == nums[i]) {
count++;
} else {
count--;
}
}
return major;
}
}
相关文章推荐
- [LeetCode] Leetcode 题解索引 (C++/Java/Python/Sql)
- Remove Nth Node From End of List---leetcode 我的java题解
- LeetCode 3. Longest Substring Without Repeating Characters 题解——Java
- LeetCode 96. Unique Binary Search Trees 题解 —— Java
- LeetCode 22. Generate Parentheses 题解 —— Java
- LeetCode题解汇总(C++ Java Python,含题目翻译)
- LeetCode 26. Remove Duplicates from Sorted Array 题解——Java
- leetcode题解Java | 491. Increasing Subsequences
- leetcode题解Java | 148. Sort List
- LeetCode 226. Invert Binary Tree 题解 —— Java
- LeetCode 19之Remove Nth Node From End of List的Java题解(三种解法)
- LEETCODE 7 Reverse Integer (JAVA题解)
- 【leetcode题解】【有问题,python没AC,java却过了】【M】【66】Perfect Squares
- LeetCode 111. Minimum Depth of Binary Tree 题解——Java
- LEETCODE 11 Container With Most Water (JAVA题解)
- Remove Duplicates from Sorted Array---leetcode 我的java题解
- LeetCode242_Valid Anagram(判断两个字符串是不是由完全一样字符组成) Java题解
- LEETCODE 9 Palindrome Number (JAVA题解)
- LeetCode 392. Is Subsequence 题解——Java
- leetcode题解Java | 310. Minimum Height Trees