華為OD機(jī)試 本篇題目:最長(zhǎng)連續(xù)子串
華為 OD 機(jī)試【4 大寶典】再次上新題!
① Python 解華為機(jī)試題 :https://dream.blog.csdn.net/article/details/129221789
② C++ 解華為機(jī)試題:https://dream.blog.csdn.net/article/details/129472919
③ Java 解華為機(jī)試題:https://dream.blog.csdn.net/article/details/129652513
④ C 解華為機(jī)試題:https://dream.blog.csdn.net/article/details/129658432
本篇題目:最長(zhǎng)連續(xù)子串
題目
給定一個(gè)字符串 只包含字母和數(shù)字 按要求找出字符串中的最長(zhǎng)連續(xù)子串的長(zhǎng)度 字符串本身是其最長(zhǎng)的子串 子串要求
只包含一個(gè)字母
(a~z A~Z)
其余必須是數(shù)字字母可以在子串中的任意位置 如果找不到滿足要求的子串 比如說(shuō),全是字母或數(shù)字則返回
-1
輸入
字符串只包含字母和數(shù)字
輸出
子串的長(zhǎng)度
題解地址 ??
?? 華為 OD 機(jī)考 JAVA?https://dream.blog.csdn.net/article/details/129487571
?? 華為 OD 機(jī)考 Python?https://dream.blog.csdn.net/article/details/129004764
?? 華為 OD 機(jī)考 C++?https://dream.blog.csdn.net/article/details/129200538
?? 華為 OD 機(jī)考真 C 語(yǔ)言?https://dream.blog.csdn.net/article/details/129344269
?? 華為 OD 機(jī)考 JS?https://dream.blog.csdn.net/article/details/129114603
?? 華為 OD 機(jī)考 Golang?https://dream.blog.csdn.net/article/details/130756157?spm=1001.2014.3001.5502
華為 OD 機(jī)試
華為 OD 機(jī)試是一種面向開發(fā)人員的在線筆試,旨在測(cè)試開發(fā)人員的編程能力、算法基礎(chǔ)和基礎(chǔ)知識(shí)掌握情況。
一、題目解析
華為 OD 機(jī)試的編程題則考察開發(fā)人員的編程能力、算法基礎(chǔ)和解決問(wèn)題的能力。
二、考點(diǎn)分析
數(shù)據(jù)結(jié)構(gòu):鏈表、棧、隊(duì)列、二叉樹等。
算法基礎(chǔ):排序、查找、分治、動(dòng)態(tài)規(guī)劃、貪心等。
編程語(yǔ)言特性:語(yǔ)法、標(biāo)準(zhǔn)庫(kù)、常用操作等。
系統(tǒng)設(shè)計(jì):數(shù)據(jù)庫(kù)設(shè)計(jì)、系統(tǒng)架構(gòu)、網(wǎng)絡(luò)通信等。
三、解題思路
編程題:首先讀懂題目,明確題目要求和輸入輸出格式。然后分析問(wèn)題,選擇合適的算法和數(shù)據(jù)結(jié)構(gòu)解決問(wèn)題。在編寫代碼的過(guò)程中,要注意代碼的簡(jiǎn)潔性、可讀性和健壯性。
四、代碼示例
選擇題代碼示例:給定一個(gè)整數(shù)數(shù)組,找出數(shù)組中第二大的元素。
def find_second_largest(nums):
? ?largest = -1
? ?second_largest = -1
? ?for num in nums: ? ? ? ?if num > largest:
? ? ? ? ? ?second_largest = largest
? ? ? ? ? ?largest = num ? ? ? ?elif num > second_largest and num < largest:
? ? ? ? ? ?second_largest = num ? ?return second_largest
編程題代碼示例:給定一個(gè)字符串,找出其中的最長(zhǎng)回文子串。
def longest_palindrome(s): ? ?if len(s) < 2: ? ? ? ?return s
? ?max_len = 1
? ?start = 0
? ?for i in range(len(s)): ? ? ? ?if i - max_len >= 1 and s[i - max_len - 1:i + 1] == s[i - max_len - 1:i + 1][::-1]:
? ? ? ? ? ?start = i - max_len - 1
? ? ? ? ? ?max_len += 2
? ? ? ? ? ?continue
? ? ? ?if s[i - max_len:i + 1] == s[i - max_len:i + 1][::-1]:
? ? ? ? ? ?start = i - max_len
? ? ? ? ? ?max_len += 1
? ?return s[start:start + max_len]
五、總結(jié)
華為 OD 機(jī)試是一種針對(duì)開發(fā)人員的在線筆試,主要考察開發(fā)人員的編程能力、算法基礎(chǔ)和基礎(chǔ)知識(shí)掌握情況。在準(zhǔn)備機(jī)試時(shí),需要加強(qiáng)算法和數(shù)據(jù)結(jié)構(gòu)的訓(xùn)練,同時(shí)還要熟悉常用的編程語(yǔ)言和開發(fā)工具。在解題時(shí),需要仔細(xì)讀題,理清思路,選擇合適的方法解決問(wèn)題。最后,要注意代碼的簡(jiǎn)潔性、可讀性和健壯性。