首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【数据结构和算法】交替合并字符串

一、题目描述 给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。...返回 合并后的字符串 。...:"apbqcd" 解释:注意,word1 比 word2 长,"cd" 需要追加到合并后字符串的末尾。...2.2方法二:循环拼接 思路与算法: 我们直接按照题目的要求模拟即可。我们先求出两个字符串最长的长度和最短的长度,按照最短长度将两个字符串进行交替合并,再交替拼接最后多余的部分。...当两个字符串长度不等时,需要交替拼接最后多余的部分。 如果相等,则直接交替拼接。

15410
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    交替合并字符串(难度:简单)

    一、题目 给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。...返回 合并后的字符串 。...pqrs" 【输出】"apbqrs" 提示: • 1 <= word1.length, word2.length <= 100 • word1 和 word2 由小写英文字母组成 三、解题思路 这道题与《...合并两个有序链表》是蛮类似的,在合并有序列表中,我们操作的是链表中的节点,通过指定后续的next指针对链表进行拼装。那本题是要拼装字符串,我们可以遍历字符串的每个字符进行最终结果的拼装。...i < w1的时候才拼装word1的字符;只有当 i < w2的时候才拼装word2的字符; 具体操作细节,请参照如下图例所示: 针对本题,时间复杂度 O(m + n),其中 m 和 n 分别是两个字符串的长度

    27320

    python split()函数使用拆分字符串 将字符串转化为列表

    函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串。...通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list) os.path.split():按照路径将文件名和路径分割开 一、函数说明 1、split()函数 语法:str.split(str...若字符串中没有分隔符,则把整个字符串作为列表的一个元素 num:表示分割次数。...如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量 [n]:   表示选取第n个分片 注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略 2、os.path.split...',2)[1] doiido #分割最多次(实际与不加num参数相同) >>> print u.split('.',-1) ['www', 'doiido', 'com', 'cn'] #分割两次,

    6.2K50

    Python入门基础教程-列表与字符串高阶操作

    Python版本3.8.0,开发工具:Pycharm 其实,本小节应该出现在Python进阶教程中,但对于想快速入门Python的读者中,本小节内容又必须得了解,所以,我在删减了部分进阶内容(主要是Numpy与Pandas...的一些操作)后,补充了本小节内容 在Python六大数据类型中,字符与列表是最常用的两大类型,且在使用过程中,存在许多实用小技巧,方便更快速的进行数据处理,本小节主要是字符和列表的高阶操作。...rstrip(),删除字符串开头和末尾的空格 39strip([chars]) 字符串格式化 目的:将一个值/字符插入到一个字符串中。...列表切片 同字符串切换一样,列表同样可以进行切片 1# 定义列表 2list_str = ['aa', 'bb', 11, 'cc'] 3# 输出列表最后一位 4print(list_str[-1])...5# 倒序输出列表 6print(list_str[::-1]) 7# 同字符串切片 8...

    46220

    Python进阶8——字典与散列表,字符串编解码

    4.如果foundkey与key相等,返回foundvalue,如果foundkey与key不相等,发生散列冲突,执行第5步。         ...这样在循环迭代并同时添加键值对时就有可能跳过一些键          所以,在对已有字典进行循环迭代时,不要同时进行添加操作,而应该先新建一个空字典,将要添加的键值对放在空字典中,然后对原有字典和新字典进行合并...  合并字典可用update方法  l1=[(2,'two'), (1,'one'), (4,'four'), (3,'three')] l2=[(5,'five'), (6,'six'), (7,'seven...(8,'eight')] dl1=dict(l1) dl2=dict(l2) d=dict() d.update(dl1) d.update(dl2) print(d)           编码就是将文本字符串转化为字节序列...,解码就是将字节序列转化为文本字符串,常见的编解码格式有utf8,字节序列计算机识别,文本字符串人类识别  举例  s1='helloworld' t1=s1.encode('utf8') print(

    1.3K10

    西部数据将分拆闪存业务与铠侠合并,前者将持有超过50%股权

    该协议的内容主要是分拆西部数据的 NAND Flash闪存部门,然后与铠侠合并。之后,西部数据的股东将控制合并后的新公司大约超过一半的股权。不过,目前相关信息仍在保密中。...报道指出,两家公司在谈判时,有建议将由铠侠的团队来主导合并后新公司的经营,不过西部数据的高管也将发挥相对的重要辅助作用。预计合并后的新公司将採用双重董事会制度,两家闪存芯片制造商的高层都将是成员。...因此,铠侠和西部数据的 NAND Flash 闪存部门合并后,有望成为全球最大NAND Flash供应商。...事实上,因为智能手机、PC等市况的恶化,对于闪存芯片的需求大幅下滑,造成了闪存芯片厂商业绩低迷,使得铠侠与西部数据希望藉由并闪存业务来提高运营效率。...相关市场人士指称,合并工作将在铠侠掌握主导权的情况下,针对出资比例等细节进行进一步协商。 编辑:芯智讯-林子

    27530

    Python中字符串的一些方法回顾(拆分与合并)

    # python中字符串的一些方法回顾(拆分与合并) 字符串中split函数和join函数的使用 # 代码 # 假设:以下内容是从网络上抓取的 # 要求: # 1、将字符串中的空白字符全部去掉 # 2、...再使用" "作为分隔符,拼接成一个整齐的字符串 poem_str = "登鹤鹊楼\t 王之涣 \t 白日依山尽 \t\n 黄河入海流 \t\t 欲穷千里目\t\t更上一层楼" print(poem_str...) # 1、拆分字符串 split方法会返回列表 poem_list = poem_str.split() print(poem_list) # 2、合并字符串 result = " ".join...(poem_list) print(result) # 运行结果 原始字符串: 登鹤鹊楼 王之涣 白日依山尽 黄河入海流 欲穷千里目 更上一层楼 拆分字符串后: ['登鹤鹊楼',...'王之涣', '白日依山尽', '黄河入海流', '欲穷千里目', '更上一层楼'] 合并字符串后: 登鹤鹊楼 王之涣 白日依山尽 黄河入海流 欲穷千里目 更上一层楼

    2.3K30

    Python编程实验二:字符串与列表的基本应用

    一、实验目的与要求 (1)通过本次实验,学生应掌握字符串索引、切片和一些常用方法的使用; (2)掌握列表创建的基本方法,能实现列表元素增加、查询、排序等常见操作; (3)能结合应用问题选择合适的数据结构进行问题求解...4、请按照教材教材第83页实训2中表3-5给出的数据完成食物菜单的建立与查询。建议使用一个列表存储食品大类,另一个列表存储各类食物的详细菜单。...程序运行结果可以参考如下图: 提示:本题主要涉及列表元素的增加与查询。...程序运行结果可以参考如下图: 提示:本题主要涉及列表元素的增加与查询。...四、实验结果分析与体会 通过本次实验,掌握了字符串索引、切片和一些常用方法的使用,以及列表创建的基本方法,能实现列表元素增加、查询、排序等常见操作,能结合应用问题选择合适的数据结构进行问题求解

    4200

    【Python基础编程】玩转字符串与列表的高效操作技巧

    ,与find方法用法类似,rfind方法是从右往左查找,并且返回正数时的下标 testValue.rfind('C') # 结果为2 # count,查找指定字符在原字符串中出现的次数 testValue.count...('A') # 结果为1 # replace,将字符串中的指定字符替换成目标字符 testValue.replace('A', 'a') # 结果为aBCDEFG # split,将字符串按照指定字符进行拆分...,返回的结果为列表,并且指定字符不存在与该列表中 testValue.split("B") # 结果为['A', 'CDEFG'] # startswith,判断字符串是否以指定字符开头,若是则结果为...("G") # 结果为True # lower,将字符串中的字符全部转为小写 testValue.lower() # 结果为abcdefg # upper,将字符串中的字符全部转为大写 testValue.upper...(二)切片 列表的切片与字符串的相同 # 定义一个list列表 list = ['A', 'B', 'C', 'D', 'E'] list[0:2] # 结果为['A', 'B'],未填步长则默认步长为

    5900
    领券