1. 程式人生 > >騰訊2017暑期實習生編程題 第二題 字符移位

騰訊2017暑期實習生編程題 第二題 字符移位

append () pen bic end OS gpo remove 描述

小Q最近遇到了一個難題:把一個字符串的大寫字母放到字符串的後面,各個字符的相對位置不變,且不能申請額外的空間。
你能幫幫小Q嗎?


輸入描述:

輸入數據有多組,每組包含一個字符串s,且保證:1<=s.length<=1000.
  


輸出描述:

對於每組數據,輸出移位後的字符串。

輸入例子1:
AkleBiCeilD

輸出例子1:
kleieilABCD
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Main{ public static void main(String[] args) { Scanner s = new Scanner(System.in); ArrayList<ArrayList> Biglist = new ArrayList<>(); while(s.hasNext()) { String m = s.next(); char[] charArray = m.toCharArray(); ArrayList list
= new ArrayList(); for(int i=0;i<charArray.length;i++) { list.add(charArray[i]); } Biglist.add(list); break; } for (ArrayList list : Biglist) { System.out.println(func(list)); } } public static
String func(ArrayList list) { for (int i=0,j=0;i<list.size();i++,j++) { if(‘A‘<=(char)list.get(j) && (char)list.get(j)<=‘Z‘) { char ch = (char) list.remove(j); list.add(ch); j--; } } StringBuffer sb = new StringBuffer(); for (Object c : list) { sb.append(c); } return sb.toString(); } }

騰訊2017暑期實習生編程題 第二題 字符移位