当前位置:网站首页>1791. Find the central node of the star diagram / 1790 Can two strings be equal by performing string exchange only once
1791. Find the central node of the star diagram / 1790 Can two strings be equal by performing string exchange only once
2022-07-06 00:53:00 【PI Qiliang】
1791. Find the central node of the star graph 【 Simple questions 】
Ideas :
- Because each point does not repeat , and edges It represents the line connected by two endpoints , Then the central node of these lines will inevitably repeat in these segments , Only the central node will appear repeatedly , So as long as there is an endpoint in the center, at least 2 Time , Then this point must be the central node .
- Define a hash set Used to store the endpoints of these segments , As long as there is endpoint repetition , Then return to this node directly , Otherwise, add this endpoint into set Traverse the next line segment .
Code :
class Solution {
public int findCenter(int[][] edges) {
Set<Integer> set = new HashSet<>();
for (int[] edge : edges) {
if (!set.add(edge[0])){
return edge[0];
}
if (!set.add(edge[1])){
return edge[1];
}
}
return 0;
}
}
when :
At present, there is no official solution .
1790. Can performing only one string exchange make two strings equal 【 Simple questions 】
Ideas :
- Define a list list Used to count the character positions of two strings that are not equal .
- Because the two strings are the same length , So use ordinary for Loop can traverse two strings at the same time , If the characters of two strings are different in the same position , Add the current location to list in , After adding, if you find list The length of has been greater than 2 了 , Then it means that at this time, the two strings have at least 3 The positions of characters are different , It is impossible to make two strings equal by one string Exchange , So at this point, go straight back to false.
- After string traversal , If list The length of is still 0, Then it means that the two strings are exactly the same , Then I exchange characters in the same position of two strings at will , After that, the two strings must still be equal , Satisfy the question , So at this point, go straight back to true.
- If list The length of is 1, At this time, there is only one position character difference between the two strings , The characters in other positions are all the same and cannot be exchanged , At this time, it must be impossible to make the two strings equal through a string Exchange , So back false.
- Get rid of list The length of is 0, by 1 The situation of , that list The length of can only be 2 了 ( Greater than 2 The situation of 2 It has been eliminated when traversing two strings in one step , Can go to the end of traversal instructions list The length of must be less than or equal to 2 Of ), Now if s1 Of list【0】 The character of the position is the same as s2 Of list【1】 The characters of position are equal and s1 Of list【1】 Position character and s2 Of list【0】 Position characters are equal , Then it shows that the two unequal characters of these two strings can be exchanged to make the two strings equal , Satisfy the question , return true, Otherwise return to false.
Code :
class Solution {
public boolean areAlmostEqual(String s1, String s2) {
List<Integer> list = new ArrayList<>();
int len = s1.length();
for (int i = 0; i < len; i++) {
if (s1.charAt(i) != s2.charAt(i)){
list.add(i);
}
if (list.size()>2){
return false;
}
}
if (list.size() == 0){
return true;
}
if (list.size() == 1){
return false;
}
return (s1.charAt(list.get(0)) == s2.charAt(list.get(1))) && (s1.charAt(list.get(1)) == s2.charAt(list.get(0)));
}
}
when :
At present, there is no official solution .
notes :
I wrote today's daily question before , See
1189. “ balloon ” Maximum number of
The idea of rewriting today is not the same as last time , But the performance has not improved , I won't write it again in this article .
边栏推荐
- 云导DNS和知识科普以及课堂笔记
- Power Query数据格式的转换、拆分合并提取、删除重复项、删除错误、转置与反转、透视和逆透视
- Mobilenet series (5): use pytorch to build mobilenetv3 and learn and train based on migration
- ADS-NPU芯片架构设计的五大挑战
- synchronized 和 ReentrantLock
- vSphere实现虚拟机迁移
- 【EI会议分享】2022年第三届智能制造与自动化前沿国际会议(CFIMA 2022)
- Cf:c. the third problem
- China Taiwan strategy - Chapter 8: digital marketing assisted by China Taiwan
- The population logic of the request to read product data on the sap Spartacus home page
猜你喜欢
Cf:c. the third problem
For a deadline, the IT fellow graduated from Tsinghua suddenly died on the toilet
Cannot resolve symbol error
VSphere implements virtual machine migration
从 1.5 开始搭建一个微服务框架——调用链追踪 traceId
Differences between standard library functions and operators
激动人心,2022开放原子全球开源峰会报名火热开启
MySQL storage engine
How to use the flutter framework to develop and run small programs
Idea远程提交spark任务到yarn集群
随机推荐
Illustrated network: the principle behind TCP three-time handshake, why can't two-time handshake?
[groovy] JSON serialization (jsonbuilder builder | generates JSON string with root node name | generates JSON string without root node name)
curlpost-php
After 95, the CV engineer posted the payroll and made up this. It's really fragrant
synchronized 和 ReentrantLock
Overview of Zhuhai purification laboratory construction details
cf:C. The Third Problem【关于排列这件事】
Recursive method converts ordered array into binary search tree
Programmer growth Chapter 9: precautions in real projects
Finding the nearest common ancestor of binary search tree by recursion
[groovy] compile time metaprogramming (compile time method interception | find the method to be intercepted in the myasttransformation visit method)
CTF daily question day44 rot
Finding the nearest common ancestor of binary tree by recursion
Intranet Security Learning (V) -- domain horizontal: SPN & RDP & Cobalt strike
2022-02-13 work record -- PHP parsing rich text
猿桌派第三季开播在即,打开出海浪潮下的开发者新视野
Cf:d. insert a progression [about the insert in the array + the nature of absolute value + greedy top-down]
Spark SQL UDF function
程序员成长第九篇:真实项目中的注意事项
Mobilenet series (5): use pytorch to build mobilenetv3 and learn and train based on migration