使用 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.