Java在Web开发中应用广泛吗?
- 内容介绍
- 文章标签
- 相关推荐
本文共计618个文字,预计阅读时间需要3分钟。
目录+主题要求+思路:模拟+Java+C+++Rust+主题要求+思路:模拟+Java+class+Solution+{+public+boolean+areAlmostEqual(String+s1,+String+s2)+{+if+(s1.length()!=s2.length())+return+false;+int+a+=-1,+b+=-1;+for+(int+i+=0;+i class Solution {
public boolean areAlmostEqual(String s1, String s2) {
if (s1.length() != s2.length())
return false;
int a = -1, b = -1;
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) == s2.charAt(i))
continue;
if (a == -1)
a = i; // 第一个不同
else if (b == -1)
b = i; // 第二个不同
else
return false; // 两个以上不相同
}
if (a == -1) // 全相同
return true;
if (a != -1 && b == -1) // 一个不同
return false;
return s1.charAt(a) == s2.charAt(b) && s1.charAt(b) == s2.charAt(a); // 不同位置字符相同
}
}
class Solution {
public:
bool areAlmostEqual(string s1, string s2) {
if (s1.size() != s2.size())
return false;
int a = -1, b = -1;
for (int i = 0; i < s1.size(); i++) {
if (s1[i] == s2[i])
continue;
if (a == -1)
a = i; // 第一个不同
else if (b == -1)
b = i; // 第二个不同
else
return false; // 两个以上不相同
}
if (a == -1) // 全相同
return true;
if (a != -1 && b == -1) // 一个不同
return false;
return s1[a] == s2[b] && s1[b] == s2[a]; // 不同位置字符相同
}
};
impl Solution {
pub fn are_almost_equal(s1: String, s2: String) -> bool {
if (s1.len() != s2.len()) {
return false;
}
let n = s1.len();
let (mut a, mut b) = (n, n);
let (s1, s2) = (s1.as_bytes(), s2.as_bytes());
for i in 0..n {
if s1[i] == s2[i] {
continue;
}
if a == n {
a = i; // 第一个不同
}
else if b == n {
b = i; // 第二个不同
}
else {
return false; // 两个以上不相同
}
}
if a == n { // 全相同
return true;
}
if a != n && b == n { // 一个不同
return false;
}
s1[a] == s2[b] && s1[b] == s2[a] // 不同位置字符相同
}
}
以上就是Java C++ leetcode执行一次字符串交换能否使两个字符串相等的详细内容,更多关于Java C++ 字符串交换相等的资料请关注自由互联其它相关文章!目录
题目要求
思路:模拟
Java
C++
Rust
本文共计618个文字,预计阅读时间需要3分钟。
目录+主题要求+思路:模拟+Java+C+++Rust+主题要求+思路:模拟+Java+class+Solution+{+public+boolean+areAlmostEqual(String+s1,+String+s2)+{+if+(s1.length()!=s2.length())+return+false;+int+a+=-1,+b+=-1;+for+(int+i+=0;+i class Solution {
public boolean areAlmostEqual(String s1, String s2) {
if (s1.length() != s2.length())
return false;
int a = -1, b = -1;
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) == s2.charAt(i))
continue;
if (a == -1)
a = i; // 第一个不同
else if (b == -1)
b = i; // 第二个不同
else
return false; // 两个以上不相同
}
if (a == -1) // 全相同
return true;
if (a != -1 && b == -1) // 一个不同
return false;
return s1.charAt(a) == s2.charAt(b) && s1.charAt(b) == s2.charAt(a); // 不同位置字符相同
}
}
class Solution {
public:
bool areAlmostEqual(string s1, string s2) {
if (s1.size() != s2.size())
return false;
int a = -1, b = -1;
for (int i = 0; i < s1.size(); i++) {
if (s1[i] == s2[i])
continue;
if (a == -1)
a = i; // 第一个不同
else if (b == -1)
b = i; // 第二个不同
else
return false; // 两个以上不相同
}
if (a == -1) // 全相同
return true;
if (a != -1 && b == -1) // 一个不同
return false;
return s1[a] == s2[b] && s1[b] == s2[a]; // 不同位置字符相同
}
};
impl Solution {
pub fn are_almost_equal(s1: String, s2: String) -> bool {
if (s1.len() != s2.len()) {
return false;
}
let n = s1.len();
let (mut a, mut b) = (n, n);
let (s1, s2) = (s1.as_bytes(), s2.as_bytes());
for i in 0..n {
if s1[i] == s2[i] {
continue;
}
if a == n {
a = i; // 第一个不同
}
else if b == n {
b = i; // 第二个不同
}
else {
return false; // 两个以上不相同
}
}
if a == n { // 全相同
return true;
}
if a != n && b == n { // 一个不同
return false;
}
s1[a] == s2[b] && s1[b] == s2[a] // 不同位置字符相同
}
}
以上就是Java C++ leetcode执行一次字符串交换能否使两个字符串相等的详细内容,更多关于Java C++ 字符串交换相等的资料请关注自由互联其它相关文章!目录
题目要求
思路:模拟
Java
C++
Rust

