面试题之算法集锦,试题算法集锦
思路1:<span> 把A去重得到A1</span>,B去重得到B1,然后对A1,B1分别进行排序,然后遍历较短的字符串的每个字符是否存在于较长的字符串中,<span>存在则输出 问题</span>: 1.思路很简单,基本大家都会这么考虑,<span>但是面试的时候就没有亮点了 思路2</span>:<span> 假设AB串只包含小写(其实无所谓)</span>,那么创建一个数组,数组的key为a->z,<span>value都是0; </span><?<span>php </span><span>function</span> stringToChar(<span>$str</span>,<span>$num</span>=1,<span>$tmp</span>=<span>null</span><span>){ </span><span>if</span>(<span>empty</span>(<span>$tmp</span><span>)){ </span><span>$tmp</span>=<span>array</span>('a'=>0,'b'=>0,'c'=>0,'d'=>0,'e'=>0,'f'=>0,'g'=>0,'h'=>0,'i'=>0,'j'=>0,'k'=>0,'l'=>0,'m'=>0,'n'=>0,'o'=>0,'p'=>0,'q'=>0,'r'=>0,'s'=>0,'t'=>0,'u'=>0,'v'=>0,'w'=>0,'x'=>0,'y'=>0,'z'=>0<span>); } </span><span>$arr_temp</span>=<span>str_split</span>(<span>$str</span>,1<span>); </span><span>foreach</span>(<span>$arr_temp</span> <span>as</span> <span>$v</span><span>){ </span><span>if</span>(<span>$tmp</span>[<span>$v</span>]<<span>$num</span><span>){ </span><span>$tmp</span>[<span>$v</span>]+=<span>$num</span><span>; } } </span><span>return</span> <span>$tmp</span><span>; } </span><span>function</span> getStringIntersect(<span>$str1</span>, <span>$str2</span><span>){ </span><span>$temp</span>=stringToChar(<span>$str1</span>,1<span>); </span><span>//</span><span>$str2的$num用2 就是为了区分 stemp中的原来的1 是 $str1中设置的</span> <span>$temp</span>=stringToChar(<span>$str2</span>,2,<span>$temp</span><span>); </span><span>$result</span>=''<span>; </span><span>foreach</span> (<span>$temp</span> <span>as</span> <span>$key</span> => <span>$value</span><span>) { </span><span>if</span>(<span>$value</span>===3<span>){ </span><span>$result</span>.=<span>$key</span><span>; } } </span><span>return</span> <span>$result</span><span>; } </span><span>$A</span>="common";<span>//</span><span>"hello";</span> <span>$B</span>="month";<span>//</span><span>"jeesite";</span> <span>$result</span>=getStringIntersect(<span>$A</span>, <span>$B</span><span>); </span><span>echo</span> <span>$result</span><span>; </span>?><br />今天随便浏览网页的时候又发现了这篇文章(一次谷歌面试趣事)<br />我想起来了 思路二出自这篇文章。
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
刺客信條陰影:貝殼謎語解決方案
4 週前ByDDD
Windows 11 KB5054979中的新功能以及如何解決更新問題
3 週前ByDDD
在哪裡可以找到原子中的起重機控制鑰匙卡
4 週前ByDDD
<🎜>:死鐵路 - 如何完成所有挑戰
1 個月前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
2 週前ByDDD

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。