编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 示例 1: 输入:["h","e","l","l","o"]
输出:["o","l","l","e","h"]
示例 2: 输入:["H","a","n","n","a","h"]
输出:["h","a","n","n","a","H"]

 这题比较简单,如果使用python完成会很方便

上一个简单的代码(通过192ms)击败13%

 class Solution:
def reverseString(self, s):
"""
:type s: List[str]
:rtype: void Do not return anything, modify s in-place instead.
"""
s[:]=s[::-1] if __name__=="__main__":
s=Solution()
list = [1,2,3]
print(s.reverseString(list))

非常简洁只有1行  前半句s[:]为s的全部遍历,说下后半句的意思-1表示步长为1并且是倒序的。所以整句的意思就是倒序返回链表。

换一个常规做法(通过200ms)

 class Solution:
def reverseString(self, s):
"""
:type s: List[str]
:rtype: void Do not return anything, modify s in-place instead.
"""
for i in range(len(s) // 2):
temp = s[i]
s[i] = s[-i - 1]
s[-i - 1] = temp if __name__=="__main__":
s=Solution()
list = [1,2,3]
print(s.reverseString(list))

不需要太多解释,就是反过来赋值。

最新文章

  1. Android经典的设计模式
  2. 使用IntelliJ IDEA 配置Maven(入门)
  3. Java 使用线程方式Thread和Runnable,以及Thread与Runnable的区别
  4. 如何解决WebkitBrowser使用出错“Failed to initialize activation context”
  5. [Flex] PopUpButton系列——CornerRadius的运用
  6. CentOS7上GitHub/GitLab多帐号管理SSH Key
  7. Prometheus(转载)
  8. Net Configuration Agent
  9. 谷歌浏览器中安装JsonView扩展程序
  10. swust oj 1075
  11. 三: vue组件开发及自动化工具vue-cli
  12. 【javascript】您好, 您要的ECMAScript6速记套餐到了 (一)
  13. dp之二维背包hdu3496
  14. python 单线程实现并发
  15. 利用nodeJs anywhere搭建本地服务器环境【转载】
  16. 如何确保C#的应用程序只被打开一次
  17. MySQL之长连接、短连接、连接池
  18. Spring课程 Spring入门篇 5-5 advice应用(下)
  19. 截屏快捷键(windows)自带截屏,不需要安装任何插件
  20. Packet Tracer 5.0 构建CCNA实验(2)—— 配置VLAN

热门文章

  1. FPGA學習筆記(貳)--- 流水燈
  2. Linux iptables 安全配置(防Ddos)
  3. LINUX日常操作二
  4. STS中springmvc.xml配置文件
  5. composer require aliyuncs/oss-sdk-php
  6. maven跳过测试编译命令
  7. 检索html页自生成&nasp;标签,并替换为空(即去掉空格)
  8. vs C++ scanf 不安全
  9. EC20指令测试
  10. 未能加载文件或程序集“ .....WebUI ”或它的某一个依赖项,试图加载格式不正确的程序