LeetCode 344: Reverse String 题解
2016-08-16 22:49
507 查看
从今天开始我也来刷刷 LeetCode,从最简单的题开始。
LeetCode 344: Reverse String
Problem:
Write a function that takes a string as input and returns the string reversed.
Example:
Given s = “hello”, return “olleh”.
这道题很简单,就是翻转字符串。LeetCode的题目答案都是以函数作为框架的,所以我们需要按照要求讲程序写到给定的函数中,并且返回正确的答案。
这道题可以从字符串的开头和结尾开始交换,然后逐渐向字符串的中间靠近,直到全部交换完成,整个字符串就翻转了,另外,这种方法不需要关心字符串的长度是奇数还是偶数。
复习到的知识点:C语言中的指针是可以进行加减运算的,字符串在内存中是连续存储的,并且以空字符(’\0’)结尾
通过代码如下:
LeetCode 344: Reverse String
Problem:
Write a function that takes a string as input and returns the string reversed.
Example:
Given s = “hello”, return “olleh”.
这道题很简单,就是翻转字符串。LeetCode的题目答案都是以函数作为框架的,所以我们需要按照要求讲程序写到给定的函数中,并且返回正确的答案。
这道题可以从字符串的开头和结尾开始交换,然后逐渐向字符串的中间靠近,直到全部交换完成,整个字符串就翻转了,另外,这种方法不需要关心字符串的长度是奇数还是偶数。
复习到的知识点:C语言中的指针是可以进行加减运算的,字符串在内存中是连续存储的,并且以空字符(’\0’)结尾
通过代码如下:
char* reverseString(char* s) { char* low = s; //字符串的第一个字符 char* high = s + strlen(s) - 1; //字符串的最后一个字符 char temp; while(low < high){ //从两边到中间逐次交换字符 temp = *low; *low++ = *high; *high-- = temp; } return s; }
相关文章推荐
- android实现文件的拖拽效果
- [BZOJ2119]股市的预测(后缀数组+st表)
- 中国VR公司的详尽名单
- 中国VR公司的详尽名单
- Android Fragment 基本介绍
- java集合的底层实现
- 统计Txt中数字个数 并存入链表
- Java中变量的种类、变量的初始值
- 位操作算法的总结(一)
- oracle中的turnc,round,floor,ceil,coalesce函数
- iOS开发之UI学习-UITableView的复用机制
- Android4.2中全屏或者取消标题栏的方法总结
- SwiftLint——Swift代码检查及自动格式化工具
- linux定时执行任务
- 不能被工程师群殴(二)
- Android中Textview显示带html文本三-------【Textview显示网络图片】
- CentOS下安装Hive2.1.0详解
- 【CF 526F】【奇袭】
- BZOJ 1066 [SCOI2007]蜥蜴
- springmvc01