leetcode Remove Element
2015-12-02 23:21
369 查看
https://leetcode.com/problems/remove-element/
题意有点模糊
自己重写code, 有bug。要向上面一样,i从后往前扫,j+1为结果。跟move zero一样,要从后面那么i,j就都从后面,否则就都从前面
题意有点模糊
class Solution(object): def removeElement(self, nums, val): """ :type nums: List[int] :type val: int :rtype: int """ if len(nums) == 0: return 0 j = len(nums) - 1 #j仅仅表示回收 for i in range(len(nums) - 1, -1, -1): if nums[i] == val: nums[i], nums[j] = nums[j], nums[i] j -= 1 return j+1
自己重写code, 有bug。要向上面一样,i从后往前扫,j+1为结果。跟move zero一样,要从后面那么i,j就都从后面,否则就都从前面
class Solution(object): def removeElement(self, nums, val): """ :type nums: List[int] :type val: int :rtype: int """ if len(nums) == 1 and nums[0] == val: return 0 if len(nums) == 1 and nums[0] != val: return 1 i,j = 0, len(nums) - 1 while j >= 0 and nums[j] == val: j -= 1 if j == -1: return 0 while i < j: if nums[i] == val and nums[i] != nums[j]: nums[i],nums[j] = nums[j], nums[i] j -= 1 i += 1 return i + 1
相关文章推荐
- XMPP客户端库Smack 4.0.6版开发之三
- yum 使用的注意事项
- 前端工程师入门的阶段
- squid 访问日志记录
- Ubuntu中建立ftp 503错误解决办法
- 搭建Ruby on rails开发环境
- linux ubuntu 下c++ 开发环境
- [转]程序员接私活那点事
- XMPP客户端库Smack 4.0.6版开发之二
- 黑马程序员--java基础流程控制与方法(上)
- redhat系统安装部署
- 关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化
- toggle 和 onfi区别
- Android设置Settings实现:PreferenceActivity【1】
- Fragment生命周期应用交互详解
- XMPP客户端库Smack 4.0.6版开发之一
- Linux磁盘管理之创建磁盘分区05
- 似然函数的概念
- Linux内存调试工具初探-MEMWATCH
- Spring MVC中基于注解的 Controller