使用 C++ 中的位運算,查詢字母在字母表中的位置


在本問題中,給定一個由英語字母組成的字串 str。我們的任務是使用位運算查詢字母在字母表中的位置。 

問題描述: 這裡,我們將返回字串中每個字元在英語字母表中的位置。

字串中的字元不區分大小寫,即 “t” 和 “T” 被視為相同。

我們舉個例子來理解這個問題, 

輸入: str = “Tutorialspoint”

輸出: 20 21 20 15 18 9 1 12 19 16 15 9 14 20 

解決方案方法

查詢字元位置的一個簡單解決方案是找到它與 31 的邏輯 AND 運算。

闡述解決方案工作原理的程式,

示例

即時演示

#include <iostream>
using namespace std;

void findLetterPosition(string str, int n) {
   
   for (int i = 0; i < n; i++) {
      cout<<(str[i] & 31) << " ";
   }
}

int main() {
   
   string str = "TutorialsPoint";
   int n = str.length();
   cout<<"The letters position in string "<<str<<" is \n";
   findLetterPosition(str, n);

   return 0;
}

輸出

The letters position in string TutorialsPoint is
20 21 20 15 18 9 1 12 19 16 15 9 14 20

更新於: 25-Jan-2021

708 瀏覽量

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.