基于visual Studio2013解决面试题之0909移动星号
来源:互联网 发布:2017年云计算行业报告 编辑:程序博客网 时间:2024/06/11 13:58
题目
解决代码及点评
/* 函数将字符串中的字符'*' 移到串的前部分但是不能改变非*字符的顺序,比如a**b**c**经过变化后是******abc如果没有顺序的需求,那么只要跟奇偶站队一样进行交换*/#include <iostream>using namespace std;void ChangeStr(char *pszBuf){ int nLen = strlen(pszBuf); int i = nLen - 1; int j = nLen - 1;// 从尾巴上开始遍历 while (i >= 0) {// 如果i不是*号,那么拷贝到j位置,并且j-- if (pszBuf[i] != '*') { pszBuf[j--] = pszBuf[i]; }// 如果i位置上是不是*号,那么i都得继续往前移动// 这样的结果是i和j步调不一致 i--; }// 最后j剩下的位置都填写上*号即可 while (j >= 0) { pszBuf[j--] = '*'; }}int main(){ char szBuf[] = "a**b*c**"; ChangeStr(szBuf); cout<<szBuf<<endl; system("pause"); return 0;}
代码下载及其运行
代码下载地址:http://download.csdn.net/detail/yincheng01/6704519
解压密码:c.itcast.cn
下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:
1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”
2)在下拉框中选择相应项目,项目名和博客编号一致
3)点击“本地Windows调试器”运行
程序运行结果
0 0
- 基于visual Studio2013解决面试题之0909移动星号
- 基于visual Studio2013解决面试题之0201二叉树转链表
- 基于visual Studio2013解决面试题之0203栈实现
- 基于visual Studio2013解决面试题之0205查找路径
- 基于visual Studio2013解决面试题之0207单词翻转
- 基于visual Studio2013解决面试题之0202上下排
- 基于visual Studio2013解决面试题之0301累加
- 基于visual Studio2013解决面试题之0303数组求和
- 基于visual Studio2013解决面试题之0308Fibonacci数列
- 基于visual Studio2013解决面试题之0403串联字符串
- 基于visual Studio2013解决面试题之0407数组差
- 基于visual Studio2013解决面试题之0501上台阶
- 基于visual Studio2013解决面试题之0504单链表逆序
- 基于visual Studio2013解决面试题之0602全排列
- 基于visual Studio2013解决面试题之0603调整数组
- 基于visual Studio2013解决面试题之0702输出数字
- 基于visual Studio2013解决面试题之0703翻转栈
- 基于visual Studio2013解决面试题之0707最小元素
- MySql索引的一个技巧
- 基于visual Studio2013解决面试题之0907大数乘法
- 基于visual Studio2013解决面试题之0908最大连续数字串
- 局部图像特征描述概述
- javascript数据类型(以及它们的一些特性与判断)
- 基于visual Studio2013解决面试题之0909移动星号
- 基于visual Studio2013解决面试题之1001去除数字
- 黑马程序员——线程的学习
- 第一节:简单框架搭建-struts-2.3.15.3
- Chapter_02 C语言的语言特性
- Java多线程与并发库高级应用之阻塞队列BlockingQueue
- Windbg调试命令详解(1)
- asp之让Session永不过期
- UINavigationController(一)