zoukankan      html  css  js  c++  java
  • 剑指Offer41 反转单词顺序,单词字符顺序不变

     1 /*************************************************************************
     2     > File Name: 41_ReverseWords.c
     3     > Author: Juntaran
     4     > Mail: JuntaranMail@gmail.com
     5     > Created Time: 2016年09月04日 星期日 16时18分34秒
     6  ************************************************************************/
     7 
     8 #include <stdio.h>
     9 
    10 // 反转单词
    11 void ReverseWord(char* left, char* right)
    12 {
    13     if (left== NULL || right==NULL)
    14         return;
    15     while (left < right)
    16     {
    17         char temp = *left;
    18         *left = *right;
    19         *right = temp;
    20         
    21         left ++;
    22         right --;
    23     }
    24 }
    25 
    26 void Reverse(char* str)
    27 {
    28     if (str == NULL)
    29         return;
    30     
    31     char* left = str;
    32     char* right = str;
    33     while (*(right+1) != '')
    34         right++;
    35     
    36     // 先反转整个句子
    37     ReverseWord(left, right);
    38     
    39     // 再逐步反转每个单词
    40     left = str;
    41     right = str;
    42     while (*left != '')
    43     {
    44         if (*left == ' ')
    45         {
    46             left ++;
    47             right++;
    48         }
    49         else if (*right==' ' || *right=='')
    50         {
    51             ReverseWord(left, --right);
    52             left = ++right;
    53         }
    54         else
    55         {
    56             right ++;
    57         }
    58     }
    59 }
    60 
    61 int main()
    62 {
    63     char str[] = "I am a student. ";
    64     Reverse(str);
    65     
    66     printf("%s
    ", str);
    67     return 0;
    68 }
  • 相关阅读:
    关于java的scanner类
    switch_case注意事项
    MySQL数据库语句总结
    注册验证
    简单的java水果商店后台
    easyui判断下拉列表
    springmvc的前端控制器
    springmvc注解驱动
    双色球
    初来乍到
  • 原文地址:https://www.cnblogs.com/Juntaran/p/5839779.html
Copyright © 2011-2022 走看看