剑指offer python答案_剑指Offer刷题(python版)-阿里云开发者社区

牛客网上只支持python 2.7版本,实际和3.0及以上版本有区别。

第一天:

二维数组查找的问题:

解题思路:

例如数组: 1 2 8 9

2 4 9 12

4 7 10 13

6 8 11 15

首先看二维数组中右上角的数字,如果该数字等于要查找的数字,则查找结束;如果该数字大于要查找的数字,则剔除这一列;如果该数字小于要查找的数字,则剔除该数字所在的行。也就是说如果要查找的数字不在数组的右上角,则每一次都在数组的查找范围内剔除一行或者一列,每一步都可以缩小范围,直到找到要查找的数字,或者查找范围为空。

例如,要查找7,首先比较7和9,9大于7,则删除第4列;再比较7和8,8大于7,则删除第3列。这时数组为{[1,2],[2,4],[4,7],[6,8]}。再比较2和7,2小于7,则删除第1行;再比较4和7,则删除第二行,再比较7和7,查找完成。

替换字符串问题:

题目描述

请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

解题思路:这题用Python来做非常投机取巧,因为为python中字符串操作有replace()这个BIF。所以只需要用20%替换‘ ’就可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值