给定字符串str ,任务是查找字符串中字符的ASCII值的XOR。
例子:
Input: str = “Geeks”
Output: 95
ASCII value of G = 71
ASCII value of e = 101
ASCII value of e = 101
ASCII value of k = 107
ASCII value of s = 115
XOR of ASCII values = 71 ^ 101 ^ 101 ^ 107 ^ 115 = 95
Input: str = “GfG”
Output: 102
方法:想法是一个个地找出每个字符的ASCII值,然后找到这些值的XOR值。
下面是上述方法的实现:
C++
// C++ program to find XOR of ASCII
// value of characters in string
#include
using namespace std;
// Function to find the XOR of ASCII
// value of characters in string
int XorAscii(string str, int len)
{
// store value of first character
int ans = int(str[0]);
for (int i = 1; i < len; i++) {
// Traverse string to find the XOR
ans = (ans ^ (int(str[i])));
}
// Return the XOR
return ans;
}
// Driver code
int main()
{
string str = "geeksforgeeks";
int len = str.length();
cout << XorAscii(str, len) << endl;
str = "GfG";
len = str.length();
cout << XorAscii(str, len);
return 0;
}
Java
// Java program to find XOR of ASCII
// value of characters in String
class GFG{
// Function to find the XOR of ASCII
// value of characters in String
static int XorAscii(String str, int len)
{
// store value of first character
int ans = (str.charAt(0));
for (int i = 1; i < len; i++) {
// Traverse String to find the XOR
ans = (ans ^ ((str.charAt(i))));
}
// Return the XOR
return ans;
}
// Driver code
public static void main(String[] args)
{
String str = "geeksforgeeks";
int len = str.length();
System.out.print(XorAscii(str, len) +"\n");
str = "GfG";
len = str.length();
System.out.print(XorAscii(str, len));
}
}
// This code is contributed by PrinciRaj1992
Python3
# Python3 program to find XOR of ASCII
# value of characters in str1ing
# Function to find the XOR of ASCII
# value of characters in str1ing
def XorAscii(str1, len1):
# store value of first character
ans = ord(str1[0])
for i in range(1,len1):
# Traverse str1ing to find the XOR
ans = (ans ^ (ord(str1[i])))
# Return the XOR
return ans
# Driver code
str1 = "geeksforgeeks"
len1 = len(str1)
print(XorAscii(str1, len1))
str1 = "GfG"
len1 = len(str1)
print(XorAscii(str1, len1))
# This code is contributed by mohit kumar 29
C#
// C# program to find XOR of ASCII
// value of characters in String
using System;
class GFG{
// Function to find the XOR of ASCII
// value of characters in String
static int XorAscii(String str, int len)
{
// store value of first character
int ans = (str[0]);
for (int i = 1; i < len; i++) {
// Traverse String to find the XOR
ans = (ans ^ ((str[i])));
}
// Return the XOR
return ans;
}
// Driver code
public static void Main(String[] args)
{
String str = "geeksforgeeks";
int len = str.Length;
Console.Write(XorAscii(str, len) +"\n");
str = "GfG";
len = str.Length;
Console.Write(XorAscii(str, len));
}
}
// This code is contributed by PrinciRaj1992
输出:
123
102
时间复杂度: O(N) ,其中N是字符串的长度。