PHP(超文本預處理器)是一種廣泛用於伺服器端腳本語言的Web開發語言。它允許開發人員在HTML檔案中嵌入程式碼,從而實現動態網頁的建立和與資料庫的互動。 PHP以其簡單性、多功能性和與流行資料庫的廣泛整合能力而聞名。它提供了廣泛的擴展功能,並擁有龐大的開發者社區,確保有豐富的資源和支持
The Naive algorithm, also known as the Brute Force algorithm, is a simple pattern searching algorithm used to find occurrences of a pattern within a text. It is called "naive" because it do not itated ition solevor isconcis ition it dom .
在PHP的上下文中,Naive演算法被實作為一個函數,它接受兩個參數:要搜尋的文字和要搜尋的模式。演算法透過遍歷文本,將每個字元與模式中的相應字元進行比較。如果找到不匹配的字符,它將移動到文本中的下一個字符,並重新開始比較。如果找到匹配的字符,它將繼續比較後續字符,直到整個模式匹配或出現不匹配
<?php function searchPattern($text, $pattern) { $textLength = strlen($text); $patternLength = strlen($pattern); $foundIndexes = array(); // Array to store the found indexes // Iterate through the text for ($i = 0; $i <= $textLength - $patternLength; $i++) { $j = 0; // Check for a match at the current position while ($j < $patternLength && $text[$i + $j] == $pattern[$j]) { $j++; } // If a match is found, add the starting index to the array if ($j == $patternLength) { $foundIndexes[] = $i; } } return $foundIndexes; } // Example usage $text = "ABCABCABCABC"; $pattern = "CA"; $indexes = searchPattern($text, $pattern); if (!empty($indexes)) { echo "Pattern found at indexes: " . implode(", ", $indexes); } else { echo "Pattern not found"; } ?>
Pattern found at indexes: 2, 5, 8
The code implements the Naive algorithm for pattern searching in PHP. The searchPattern function takes two parameters: $text (the input text) and $pattern (the pattern to search for ).Within the function, the lengths of the text and pattern are determined using the strlen function. An empty array called $foundIndexes is created to store the indexes where the pattern is found in the text.
The function then iterates through the text using a for loop, comparing each character with the corresponding character in the pattern. If a match is found, it continues comparing subsequent characters until pattern the it continues comparing subsequent characters until pattern the curire. a complete match is found, the starting index is added to the $foundIndexes array.
在範例用法中,函數在呼叫時使用了一個範例文字"ABCABCABCABCABC"和一個模式"CA"。輸出結果是模式"CA"在文字中被找到的索引。總體而言,這段程式碼展示了PHP中Naive演算法的基本實現,用於在給定文字中搜尋模式並返回模式出現的索引
提供的PHP程式實作了Naive演算法用於模式搜尋。它透過逐個比較字元來在文本中搜尋給定的模式。該演算法遍歷文字並在每個位置檢查是否匹配。如果找到匹配項,它將起始索引新增到陣列中。程式傳回所有找到的索引,或指示未找到模式。雖然Naive演算法的時間複雜度為O(m * n),其中m是模式長度,n是文字長度,但它作為PHP中小規模模式搜尋任務的基本和直接的方法。
以上是PHP程式的樸素演算法用於模式搜尋的詳細內容。更多資訊請關注PHP中文網其他相關文章!