Python insert() / append() 用法 Leetcode实战演示


Posted in Python onMarch 31, 2021

简单理解就是:
append()是和朋友一起在队尾依次排队
insert(index, object)就是你朋友已经在队列里了,你插队到你朋友的位置–> insert(‘你朋友的位置’, ‘你自己’)
以一道Leetcode例题演示Python中Insert和append的用法。

#好朋友B帮你占了位置,你站到了B前面
You = 'You'
Queue = ['A','B','C','D']
Queue.insert(1,You)
print(Queue)
#['A', 'You', 'B', 'C', 'D']

原题(Leetcode1389)

给你两个整数数组 nums 和 index。你需要按照以下规则创建目标数组:

目标数组 target 最初为空。
按从左到右的顺序依次读取 nums[i] 和 index[i],在 target 数组中的下标 index[i] 处插入值 nums[i] 。
重复上一步,直到在 nums 和 index 中都没有要读取的元素。
请你返回目标数组。

题目保证数字插入位置总是存在。

详细解法

class Solution:
    def createTargetArray(self, nums, index):
        res = [nums[0]]
        for i in range(1,len(index)):
            if index[i] > len(res)-1:
            #若index位置比当前队列长度还长,那理应排在后面,直接append队尾添加
                res.append(nums[i])
                print('---------append----------')
                print('append:',index[i],nums[i])
                print(res)
            else:
            #若index位置处于当前队列中间,则执行insert插队。
                res.insert(index[i],nums[i])
                print('---------insert----------')
                print('insert',index[i],nums[i])
                print(res)
        return res
            
x = Solution()
x = x.createTargetArray([5,3,3,5,1],[0,0,2,1,2])
print(x)

结果演示:
num: [5,3,3,5,1]
index: [0,0,2,1,2]

res= [5]
---------insert----------
insert 0 3
[3, 5]
---------append----------
append: 2 3
[3, 5, 3]
---------insert----------
insert 1 5
[3, 5, 5, 3]
---------insert----------
insert 2 1
[3, 5, 1, 5, 3]
[3, 5, 1, 5, 3]

Python 相关文章推荐
将Python代码嵌入C++程序进行编写的实例
Jul 31 Python
python图片验证码生成代码
Jul 02 Python
Python简单生成随机姓名的方法示例
Dec 27 Python
python实现装饰器、描述符
Feb 28 Python
Python Tkinter模块实现时钟功能应用示例
Jul 23 Python
基于TensorBoard中graph模块图结构分析
Feb 15 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
Jun 10 Python
python中xlutils库用法浅析
Dec 29 Python
PyQt5中QSpinBox计数器的实现
Jan 18 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 Python
python某漫画app逆向
Mar 31 Python
使用Python通过企业微信应用给企业成员发消息
Apr 18 Python
tensorflow学习笔记之tfrecord文件的生成与读取
Mar 31 #Python
Python中快速掌握Data Frame的常用操作
Mar 31 #Python
pycharm无法导入lxml的解决办法
python某漫画app逆向
python爬虫--selenium模块
Mar 31 #Python
【超详细】八大排序算法的各项比较以及各自特点
pandas 操作 Excel操作总结
Mar 31 #Python
You might like
使用sockets:从新闻组中获取文章(一)
2006/10/09 PHP
php读取纯真ip数据库使用示例
2014/01/26 PHP
php将session放入memcached的设置方法
2014/02/14 PHP
thinkPHP实现表单自动验证
2014/12/24 PHP
JavaScript 存在陷阱 删除某一区域所有节点
2010/05/10 Javascript
javascript分页代码实例分享(js分页)
2013/12/13 Javascript
js二维数组定义和初始化的三种方法总结
2014/03/03 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
BootStrap 弹出层代码
2017/02/09 Javascript
Vue2 配置 Axios api 接口调用文件的方法
2017/11/13 Javascript
vue-cli 使用vue-bus来全局控制的实例讲解
2018/09/15 Javascript
electron-vue利用webpack打包实现多页面的入口文件问题
2019/05/12 Javascript
webpack 代码分离优化快速指北
2019/05/18 Javascript
详解微信小程序支付流程与梳理
2019/07/16 Javascript
深入浅析ng-bootstrap 组件集中 tabset 组件的实现分析
2019/07/19 Javascript
通过实例了解Nodejs模块系统及require机制
2020/07/16 NodeJs
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
python函数参数*args**kwargs用法实例
2013/12/04 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
2019/02/22 Python
Django后端接收嵌套Json数据及解析详解
2019/07/17 Python
Python 私有化操作实例分析
2019/11/21 Python
html5 web本地存储将取代我们的cookie
2012/12/26 HTML / CSS
BLACKMORES澳洲官网:澳大利亚排名第一的保健品牌
2018/09/27 全球购物
马来西亚最热门的在线时尚商店:FashionValet
2018/11/11 全球购物
Electric官网:美国高级眼镜和配件品牌
2020/06/04 全球购物
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
博士生入学考试推荐信
2013/11/17 职场文书
水利公司纪检监察自我鉴定
2014/02/25 职场文书
厂办主管岗位职责范本
2014/02/28 职场文书
计算机科学系职业生涯规划书
2014/03/08 职场文书
学校食品安全实施方案
2014/06/14 职场文书
护士医德医风自我评价
2014/09/15 职场文书
预备党员群众路线教育实践活动思想汇报2014
2014/10/25 职场文书
详解如何修改nginx的默认端口
2021/03/31 Servers
HTML+CSS+JS实现图片的瀑布流布局的示例代码
2021/04/22 HTML / CSS