当前位置: 面试刷题>> 程序检查 (经典算法题500道)


由于原始问题中“程序检查请补充完整题目描述”这一表述较为模糊,我将假设一个常见的编程题目场景,即“编写一个程序来检查一个字符串是否是有效的回文串”。回文串是指正读和反读都相同的字符串,例如 "madam" 或 "racecar"。

以下是使用 PHP、Python 和 JavaScript 编写的示例代码,用于检查一个字符串是否为回文串。

PHP 示例

<?php
function isPalindrome($str) {
    // 移除字符串中的非字母数字字符,并转换为小写
    $cleanStr = strtolower(preg_replace('/[^a-z0-9]/i', '', $str));
    
    // 检查字符串与其反转是否相等
    return $cleanStr === strrev($cleanStr);
}

// 测试
$testStr = "A man, a plan, a canal: Panama";
if (isPalindrome($testStr)) {
    echo "$testStr is a palindrome.";
} else {
    echo "$testStr is not a palindrome.";
}
?>

Python 示例

def is_palindrome(s):
    # 移除字符串中的非字母数字字符,并转换为小写
    cleaned_str = ''.join(c.lower() for c in s if c.isalnum())
    
    # 检查字符串与其反转是否相等
    return cleaned_str == cleaned_str[::-1]

# 测试
test_str = "A man, a plan, a canal: Panama"
if is_palindrome(test_str):
    print(f"{test_str} is a palindrome.")
else:
    print(f"{test_str} is not a palindrome.")

JavaScript 示例

function isPalindrome(str) {
    // 移除字符串中的非字母数字字符,并转换为小写
    const cleanStr = str.replace(/[^a-z0-9]/gi, '').toLowerCase();
    
    // 检查字符串与其反转是否相等
    return cleanStr === cleanStr.split('').reverse().join('');
}

// 测试
const testStr = "A man, a plan, a canal: Panama";
if (isPalindrome(testStr)) {
    console.log(`${testStr} is a palindrome.`);
} else {
    console.log(`${testStr} is not a palindrome.`);
}

以上三个示例都展示了如何检查一个字符串是否为回文串,同时移除了字符串中的非字母数字字符(包括空格和标点符号),并将所有字符转换为小写,以确保回文检查不受大小写和非字母数字字符的影响。

码小课网站中有更多相关内容分享给大家学习,包括但不限于算法基础、数据结构、编程语言进阶等,适合不同阶段的编程爱好者与学习者。

推荐面试题