当前位置:网站首页>Leetcode daily question 540 A single element in an ordered array Valentine's Day special article looking for a single dog in a pile of lovers ~ the clown is myself
Leetcode daily question 540 A single element in an ordered array Valentine's Day special article looking for a single dog in a pile of lovers ~ the clown is myself
2022-07-03 20:56:00 【Ape Xiaofu】
Content of this article :leetcode A daily topic 540. A single element in an ordered array Valentine's Day Special A bunch of couples looking for a single dog ~ I didn't expect that the clown was myself
Article column :leetcode A daily topic 《 Punch in daily 》
Recent updates :2022 year 2 month 13 Japan leetcode A daily topic 1189. “ balloon ” Maximum number of Simple simulation questions ~
Personal profile : A Junior Program ape in two colleges , In the spirit of paying attention to the foundation , Clock in algorithm , Sharing technology as a personal experience summary blogger , Although you may be lazy sometimes , But I will stick to it , If you like blog posts very much , Suggest looking at the following line ~( Crazy hints QwQ)
give the thumbs-up Collection Leaving a message. One key, three links Care program ape , From you and me
Contents of this article
Write it at the front
Today is Valentine's Day however The profound meaning of this question makes the brain buzzing , Pair up , Find the elements listed , Good guy, break the defense directly , Find a single dog among lovers , I didn't think! , The clown is myself ~
subject
Give you an ordered array of integers only , Each of these elements will appear twice , Only one number will appear once .
Please find and return the number that only appears once .
The solution you design must meet O(log n) Time complexity and O(1) Spatial complexity .
Example
Example 1:
Input : nums = [1,1,2,3,3,4,4,8,8]
Output : 2
Example 2:
Input : nums = [3,3,7,7,10,11,11]
Output : 10
Tips
1 <= nums.length <= 10^50 <= nums[i] <= 10^5
Ideas
This question examines the knowledge points
There are roughly two ways to solve problems :
- The first one is : Direct violence AC Because this is an ordered array , If from the first group of elements ( A set of elements is 2 individual ) Start , If a group of elements are different Then there must be a single element between the two . Of course, you can also use hash table counting .
- The second kind : Because the time complexity of this problem is expected to be logn Then we can't use violence , Pairing , Two points search .
Code implementation
violence AC
class Solution {
public int singleNonDuplicate(int[] nums) {
int n= nums.length;
// Pair up If there is inconsistency in this group, it is not a couple Returns the first element
for(int i=0;i<n-1;i+=2){
if(nums[i] != nums[i+1]){
return nums[i];
}
}
// If you traverse to the last element, you will directly return this single dog
return nums[n-1];
}
}
Two points ( Valentine's Day Is dichotomy really good ?)
class Solution {
public int singleNonDuplicate(int[] nums) {
int left = 0;
int right = nums.length-1;
int mid ;
// Just set the template directly
while(left < right){
mid = left + (right - left )/2;
if (mid % 2 == 1)mid--;
if (nums[mid] == nums[mid+1])
left+=2;
else {
right = mid;
}
}
return nums[left];
}
}
Running results
violence AC

Two points search 
At the end
2022-2-14 Xiao Fu clocked in today ~
A beautiful sunrise Beautiful mountains and rivers
Because of you And bright dazzling

边栏推荐
- Is flush account opening and registration safe and reliable? Is there any risk?
- Oak-d raspberry pie cloud project [with detailed code]
- Install and use Chrony, and then build your own time server
- 你真的知道自己多大了吗?
- Yyds dry goods inventory TCP & UDP
- Deep search DFS + wide search BFS + traversal of trees and graphs + topological sequence (template article acwing)
- Hcie security Day12: supplement the concept of packet filtering and security policy
- Cesiumjs 2022 ^ source code interpretation [7] - Analysis of the request and loading process of 3dfiles
- In 2021, the global foam protection packaging revenue was about $5286.7 million, and it is expected to reach $6615 million in 2028
- University of Electronic Science and technology | playback of clustering experience effectively used in reinforcement learning
猜你喜欢

Scientific research document management Zotero

18、 MySQL -- index

Link aggregation based on team mechanism

QT6 QML book/qt quick 3d/ Basics

设计电商秒杀系统

一台服务器最大并发 tcp 连接数多少?65535?

Memory analyzer (MAT)

An old programmer gave it to college students

Xai+ network security? Brandon University and others' latest "interpretable artificial intelligence in network security applications" overview, 33 page PDF describes its current situation, challenges,

Task of gradle learning
随机推荐
Gee calculated area
Kubernetes abnormal communication network fault solution ideas
Hcie security Day12: supplement the concept of packet filtering and security policy
Discussion Net legacy application transformation
AI enhanced safety monitoring project [with detailed code]
APEC industry +: father of the king of the ox mill, industrial Internet "king of the ox mill anti-wear faction" Valentine's Day greetings | Asia Pacific Economic media | ChinaBrand
It is discussed that the success of Vit lies not in attention. Shiftvit uses the precision of swing transformer to outperform the speed of RESNET
鹏城杯 WEB_WP
2022 safety officer-c certificate examination and safety officer-c certificate registration examination
Go learning notes (4) basic types and statements (3)
Basic number theory -- Chinese remainder theorem
Yyds dry goods inventory TCP & UDP
阻塞非阻塞和同步异步的区分 参考一些书籍
Etcd 基于Raft的一致性保证
What is the maximum number of concurrent TCP connections for a server? 65535?
【leetcode】1027. Longest arithmetic sequence (dynamic programming)
Memory analyzer (MAT)
你真的知道自己多大了吗?
App compliance
CesiumJS 2022^ 源码解读[7] - 3DTiles 的请求、加载处理流程解析