给你两个字符串 wordl 和word2。请你从word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。 返回合并后的字符串。 示例: 输入: wordl =" abc ",word2=" pqr "输出:" apbqer "
时间: 2023-12-14 22:37:30 浏览: 56
可以使用双指针的方法,分别指向两个字符串的第一个字符,然后依次将它们交替加入到新的字符串中。如果其中一个字符串先被处理完了,就将另一个字符串的剩余部分直接加入到新的字符串的末尾即可。
以下是实现代码:
```
def mergeStrings(word1, word2):
i, j = 0, 0
res = ''
while i < len(word1) and j < len(word2):
res += word1[i]
res += word2[j]
i += 1
j += 1
if i < len(word1):
res += word1[i:]
if j < len(word2):
res += word2[j:]
return res
```
对于输入样例 word1="abc",word2="pqr",该函数的输出结果为 "apbqcr"。
相关问题
补全代码lcd显示字int wordl, wordc; for(wordl = 0; wordl < 16; wordl++) { for(wordc = 0; wordc < 8; wordc++){ }
这段代码是遍历一个16行8列的矩阵,如果要在LCD上显示这个矩阵,可以在内层循环中添加对应的LCD控制指令和数据传输操作。具体的代码可能会根据使用的LCD型号和接口方式有所不同。下面是一个简单的示例,假设使用的是8位并口接口的LCD,对应的RS、RW、E、D0-D7引脚分别为P0.0-P0.7:
```c
int wordl, wordc;
for(wordl = 0; wordl < 16; wordl++) {
for(wordc = 0; wordc < 8; wordc++){
unsigned char data = matrix[wordl][wordc]; // 获取矩阵中对应位置的数据
LCD_RS = 1; // RS为高,表示传输的是数据而非指令
LCD_RW = 0; // RW为低,表示写入数据
LCD_E = 1; // 使能LCD控制器
P0 = data; // 将数据写入Data口
LCD_E = 0; // 结束数据传输
}
}
```
注意,上述代码只是一个示例,实际使用时需要根据具体的LCD型号和使用的接口进行相应的修改。另外,需要在代码中定义和初始化matrix数组,以存储要显示的矩阵数据。
hutool 获取两个字符串的匹配度
Hutool提供了StrUtil.similarity(String str1, String str2)方法来计算两个字符串的相似度,返回值为0到1之间的一个浮点数,表示两个字符串的相似程度。
示例代码:
```java
import cn.hutool.core.util.StrUtil;
public class Test {
public static void main(String[] args) {
String str1 = "hello world";
String str2 = "hello wordl";
double similarity = StrUtil.similarity(str1, str2);
System.out.println("相似度为:" + similarity);
}
}
```
输出结果:
```
相似度为:0.9090909090909091
```
说明这两个字符串的相似度很高。
阅读全文