騰訊2017暑期實習生程式設計題 演算法基礎 字元移位

2021-08-03 19:22:01 字數 639 閱讀 8456

小q最近遇到了乙個難題:把乙個字串的大寫字母放到字串的後面,各個字元的相對位置不變,且不能申請額外的空間。

你能幫幫小q嗎?

輸入描述:

輸入資料有多組,每組包含乙個字串s,且保證:1<=s.length<=1000.

輸出描述:

對於每組資料,輸出移位後的字串。

示例1輸入

aklebiceild

輸出kleieilabcd

思路:氣泡排序法,注意這裡不是看起來的大寫字母ab不能一起往後冒,真正理解了是從左到右每次都把乙個大寫字母冒到最後,第一次是d,第二次是c,第三次是b,最後一次是a。所以就用乙個正向的氣泡排序就能求解。

#include 

using

namespace

std;

int main()}}

cout

0; }

聯想發散:回顧三種基本排序,插入排序,選擇排序和氣泡排序。

插入排序:首先把第乙個陣列元素當作有序數列,然後不斷新增新的元素,與其比較,插入到其後面,插入操作需要先把其他後面的元素右移一位。

選擇排序:每次選擇最大或者最小的放在第一位或者最後即可。

氣泡排序:相鄰元素之間比較,把較大或較小的往後冒。

騰訊2017暑期實習生程式設計題

刷題 pragma warning disable 4996 遮蔽警告 構造回文 題目描述 給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?輸出需要刪除的字元個數。思路 其實就是,原字串翻轉之後的字串跟原字串的最長公共子串行 那麼利用動態規劃的最長公共...

騰訊2017暑期實習生程式設計題

構造回文串 給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?輸出需要刪除的字元個數。輸入描述 輸入資料有多組,每組包含乙個字串s,且保證 1 s.length 1000.輸出描述 對於每組資料,輸出乙個整數,代表最少需要刪除的字元個數。示例1 輸入 a...

騰訊2017暑期實習生程式設計題

程式設計題 構造回文 時間限制 1秒 空間限制 32768k 給定乙個字串s,你可以從中刪除一些字元,使得剩下的串是乙個回文串。如何刪除才能使得回文串最長呢?輸出需要刪除的字元個數。輸入描述 輸入資料有多組,每組包含乙個字串s,且保證 1 s.length 1000.輸出描述 對於每組資料,輸出乙個...