给一根绳子 s .任务是检查给定字符串中的字符是否为异形。A. 异形图 是一个单词、短语或句子,字母表中的任何字母都不会出现一次以上。
null
例如:
Input : S = "the big dwarf only jumps"Output : YesEach alphabet in the string S is occurredonly once.Input : S = "geeksforgeeks" Output : NoSince alphabet 'g', 'e', 'k', 's' occurredmore than once.
其想法是创建一个大小为26的哈希数组,初始化为0。遍历给定字符串的每个字母表,如果第一次遇到该字母表,则在相应的哈希数组位置标记1,否则返回false。
以下是该方法的实施情况:
C++
// C++ Program to check whether the given string is Heterogram or not. #include<bits/stdc++.h> using namespace std; bool isHeterogram( char s[], int n) { int hash[26] = { 0 }; // traversing the string. for ( int i = 0; i < n; i++) { // ignore the space if (s[i] != ' ' ) { // if already encountered if (hash[s[i] - 'a' ] == 0) hash[s[i] - 'a' ] = 1; // else return false. else return false ; } } return true ; } // Driven Program int main() { char s[] = "the big dwarf only jumps" ; int n = strlen (s); (isHeterogram(s, n))?(cout << "YES" ):(cout << "NO" ); return 0; } |
JAVA
// Java Program to check whether the // given string is Heterogram or not. class GFG { static boolean isHeterogram(String s, int n) { int hash[] = new int [ 26 ]; // traversing the string. for ( int i = 0 ; i < n; i++) { // ignore the space if (s.charAt(i) != ' ' ) { // if already encountered if (hash[s.charAt(i) - 'a' ] == 0 ) hash[s.charAt(i) - 'a' ] = 1 ; // else return false. else return false ; } } return true ; } // Driver code public static void main (String[] args) { String s = "the big dwarf only jumps" ; int n = s.length(); if (isHeterogram(s, n)) System.out.print( "YES" ); else System.out.print( "NO" ); } } // This code is contributed by Anant Agarwal. |
Python3
# Python3 code to check # whether the given # string is Heterogram # or not. def isHeterogram(s, n): hash = [ 0 ] * 26 # traversing the # string. for i in range (n): # ignore the space if s[i] ! = ' ' : # if already # encountered if hash [ ord (s[i]) - ord ( 'a' )] = = 0 : hash [ ord (s[i]) - ord ( 'a' )] = 1 # else return false. else : return False return True # Driven Code s = "the big dwarf only jumps" n = len (s) print ( "YES" if isHeterogram(s, n) else "NO" ) # This code is contributed by "Sharad_Bhardwaj". |
C#
// C# Program to check whether the // given string is Heterogram or not. using System; class GFG { static bool isHeterogram( string s, int n) { int []hash = new int [26]; // traversing the string. for ( int i = 0; i < n; i++) { // ignore the space if (s[i] != ' ' ) { // if already encountered if (hash[s[i] - 'a' ] == 0) hash[s[i] - 'a' ] = 1; // else return false. else return false ; } } return true ; } // Driver code public static void Main () { string s = "the big dwarf only jumps" ; int n = s.Length; if (isHeterogram(s, n)) Console.WriteLine( "YES" ); else Console.WriteLine( "NO" ); } } // This code is contributed by Vt_m. |
PHP
<?php // PHP Program to check // whether the given string // is Heterogram or not. function isHeterogram( $s , $n ) { $hash = array (); for ( $i = 0; $i < 26; $i ++) $hash [ $i ] = 0; // traversing the string. for ( $i = 0; $i < $n ; $i ++) { // ignore the space if ( $s [ $i ] != ' ' ) { // if already encountered if ( $hash [ord( $s [ $i ]) - ord( 'a' )] == 0) $hash [ord( $s [ $i ]) - ord( 'a' )] = 1; // else return false. else return false; } } return true; } // Driven Code $s = "the big dwarf only jumps" ; $n = strlen ( $s ); if (isHeterogram( $s , $n )) echo ( "YES" ); else echo ( "NO" ); // This code is contributed by // Manish Shaw(manishshaw1) ?> |
Javascript
<script> // Javascript program to check whether // the given string is Heterogram or not. function isHeterogram(s, n) { var hash = Array(26).fill(0); // Traversing the string. for ( var i = 0; i < n; i++) { // Ignore the space if (s[i] != ' ' ) { // If already encountered if (hash[s[i].charCodeAt(0) - 'a' .charCodeAt(0)] == 0) hash[s[i].charCodeAt(0) - 'a' .charCodeAt(0)] = 1; // Else return false. else return false ; } } return true ; } // Driver code var s = "the big dwarf only jumps" ; var n = s.length; (isHeterogram(s, n)) ? (document.write( "YES" )) : (document.write( "NO" )); // This code is contributed by rutvik_56 </script> |
输出:
YES
时间复杂性: O(N)
辅助空间: O(26)
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END