给定两个字符串s1和s2,检查s1是否是s2的后缀。或者简单地说,我们需要找出字符串s2是否以字符串s1结尾。
null
例如:
Input : s1 = "geeks" and s2 = "geeksforgeeks"Output : YesInput : s1 = "world", s2 = "my first code is hello world"Output : YesInput : s1 = "geeks" and s2 = "geeksforGeek"Output : No
方法1(编写我们自己的代码)
C++
// CPP program to find if a string is // suffix of another #include <iostream> #include <string> using namespace std; bool isSuffix(string s1, string s2) { int n1 = s1.length(), n2 = s2.length(); if (n1 > n2) return false ; for ( int i=0; i<n1; i++) if (s1[n1 - i - 1] != s2[n2 - i - 1]) return false ; return true ; } int main() { string s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function bool result = isSuffix(s1, s2); if (result) cout << "Yes" ; else cout << "No" ; return 0; } |
JAVA
// Java program to find if a string is // suffix of another class GFG { static boolean isSuffix(String s1, String s2) { int n1 = s1.length(), n2 = s2.length(); if (n1 > n2) return false ; for ( int i= 0 ; i<n1; i++) if (s1.charAt(n1 - i - 1 ) != s2.charAt(n2 - i - 1 )) return false ; return true ; } public static void main(String []args) { String s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function boolean result = isSuffix(s1, s2); if (result) System.out.println( "Yes" ); else System.out.println( "No" ); } } // This code is contributed by iAyushRaj |
Python3
# Python 3 program to find if a # string is suffix of another def isSuffix(s1, s2): n1 = len (s1) n2 = len (s2) if (n1 > n2): return False for i in range (n1): if (s1[n1 - i - 1 ] ! = s2[n2 - i - 1 ]): return False return True # Driver Code if __name__ = = "__main__" : s1 = "geeks" s2 = "geeksforgeeks" # Test case-sensitive implementation # of endsWith function result = isSuffix(s1, s2) if (result): print ( "Yes" ) else : print ( "No" ) # This code is contributed # by ChitraNayal |
C#
// C# program to find if a string is // suffix of another using System; class GFG { static bool isSuffix( string s1, string s2) { int n1 = s1.Length, n2 = s2.Length; if (n1 > n2) return false ; for ( int i=0; i<n1; i++) if (s1[n1 - i - 1] != s2[n2 - i - 1]) return false ; return true ; } public static void Main() { string s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function bool result = isSuffix(s1, s2); if (result) Console.WriteLine( "Yes" ); else Console.WriteLine( "No" ); } } // This code is contributed by iAyushRaj |
PHP
<?php // PHP program to find if a // string is suffix of another function isSuffix( $s1 , $s2 ) { $n1 = ( $s1 ); $n2 = strlen ( $s2 ); if ( $n1 > $n2 ) return false; for ( $i = 0; $i < $n1 ; $i ++) if ( $s1 [ $n1 - $i - 1] != $s2 [ $n2 - $i - 1]) return false; return true; } // Driver Code $s1 = "geeks" ; $s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function $result = isSuffix( $s1 , $s2 ); if ( $result ) echo "Yes" ; else echo "No" ; // This code is contributed by m_kit ?> |
Javascript
<script> // Javascript program to find if // a string is suffix of another function isSuffix(s1, s2) { let n1 = s1.length, n2 = s2.length; if (n1 > n2) return false ; for (let i = 0; i < n1; i++) if (s1[n1 - i - 1] != s2[n2 - i - 1]) return false ; return true ; } // Driver code let s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function let result = isSuffix(s1, s2); if (result) document.write( "Yes" ); else document.write( "No" ); // This code is contributed by decode2207 </script> |
输出:
Yes
方法2(在C++中使用boost库) 由于std::string类不提供任何字符串以另一个字符串结尾的endWith()函数,所以我们将使用Boost库。确保包含#包含boost/algorithm/string。hpp和#include字符串可以很好地运行代码。
C++
// CPP program to find if a string is // suffix of another #include <boost/algorithm/string.hpp> #include <iostream> #include <string> using namespace std; int main() { string s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function bool result = boost::algorithm::ends_with(s2, s1); if (result) cout << "Yes" ; else cout << "No" ; return 0; } |
JAVA
// Java program to find if a string is // suffix of another class GFG { public static void main(String[] args) { String s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function boolean result = s2.endsWith(s1); if (result) System.out.println( "Yes" ); else System.out.println( "No" ); } } // This code is contributed by 29AjayKumar |
Python3
# Python3 program to find if a string is # suffix of another if __name__ = = '__main__' : s1 = "geeks" ; s2 = "geeksforgeeks" ; # Test case-sensitive implementation # of endsWith function result = s2.endswith(s1); if (result): print ( "Yes" ); else : print ( "No" ); # This code is contributed by Rajput-Ji |
C#
// C# program to find if a string is // suffix of another using System; class GFG { // Driver code public static void Main(String[] args) { String s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function bool result = s2.EndsWith(s1); if (result) Console.WriteLine( "Yes" ); else Console.WriteLine( "No" ); } } // This code contributed by Rajput-Ji |
Javascript
<script> // Javascript program to find if a string is // suffix of another let s1 = "geeks" , s2 = "geeksforgeeks" ; // Test case-sensitive implementation // of endsWith function let result = s2.endsWith(s1); if (result) document.write( "Yes" ); else document.write( "No" ); // This code is contributed by avanitrachhadiya2155 </script> |
输出:
Yes
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END