騰訊2016春招之算法編程解析

第一道題:求有刪除情況的最長回文子串

題目:

?解題思路:

這個題嚴格意義上來說,刪除了字符就談不上回文串了,既然有刪除,那估計考察的不是回文串,而是其他的,但是這個東西又有回文串的特點,細想一下——那就是不連續的回文串,想到不連續,就容易使人想到最長公共子序列,把源字符串逆序之后對比兩個字符串發現:我靠,這不就是求兩個序列的最長公共子序列(好像跟回文串沒多大關系)。

考察:回文串,動態規劃,知識遷移

 1 #define M 100
 2 int dpLCS[M][M]; //設置成全局變量,自動初始化為0
 3 
 4 //動態規劃法:最長回文子串,有刪除,其實就是求最長公共子序列
 5 int LongestCommonSequence(string str)
 6 {
 7     size_t n = str.size();
 8     if (n == 0 || n == 1)
 9         return 1;
10     
11     string s = str;
12     reverse(s.begin(), s.end());
13 
14     for (size_t i = 1; i <= n; ++ i) {
15         for (size_t j = 1; j <= n; ++ j) {
16             if (str[i-1] == s[j-1]) 
17                 dpLCS[i][j] = dpLCS[i-1][j-1] + 1;
18             else 
19                 dpLCS[i][j] = max(dpLCS[i-1][j], dpLCS[i][j-1]); 
20         }
21     }
22     return dpLCS[n][n];
23 }


第二個題:蛇形矩陣,又叫螺旋矩陣

題目:

?解題思路:

解螺旋矩陣的切入點需要知道矩陣的個數,看下面一幅圖:

如果是n = odd,則中間只有一個數,不算做一個矩陣,如果n = even,則中間是一個矩陣,總的矩陣個數為n/2,知道這一點,后面的工作就是分別從外向里遍歷每一個矩陣即可。

 1 void HelixMatrix(int n)
 2 {
 3     int **a = new int *[n];
 4     for (int i = 0; i < n; i ++)
 5         a[i] = new int[n];
 6 
 7     int m = 0;
 8     for (int k = 0; k < n/2; ++ k) { //n/2矩陣個數
 9         for (int i = 0; i <= n-1-k; ++ i)
10             a[k][i] = m++; //第一區塊
11         for (int i = k + 1; i < n-1-k; ++ i)
12             a[i][n-1-k] = m++; //第二區塊
13         for (int i = n-1-k; i > k; -- i)
14             a[n-1-k][i] = m++; //第三區塊
15         for (int i = n-1-k; i > k; -- i)
16             a[i][k] = m ++; //第四區塊
17         if (n%2 == 1)
18             a[n/2][n/2] = m; //n=odd,填充中間一個數
19     }
20     for (int i = 0; i < n; i ++) {
21         for (int j = 0; j < n; j ++)
22             cout << a[i][j] << " ";
23         cout << endl;
24     }
25     //釋放a
26     for(int i = 0; i < n; i ++) {
27         delete [] a[i];
28     }
29     delete []a;
30 }


附:選擇題部分整理

1、HTTP協議的請求類型,端口號,返回碼等

2、在同一臺機器上,內存訪問,SATA硬盤隨機訪問時間分別是:(幾十納秒,幾十毫秒)

3、E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)}的深度優先遍歷序列

4、關于操作系統的說法正確的是:

  a、同一個線程內可以運行多個消息隊列

  b、Windows中使用臨界區,不需要切換到內核態

  c、互斥量可以用于多進程間對資源的安全共享

  d、信號量允許多個線程同時使用共享資源

5、頁面采用click事件會存在300ms延時的原因

6、用0-9,a-z表示36進制的873085

7、冒泡排序,堆排序,歸并排序,快速排序的時間復雜度

8、http的返回碼101,404,502,200的含義

9、面向對象程序設計SOLID五大原則,各字母的含義

10、有關網絡協議說法正確的是:
  A.UDP是無連接不可靠的,TCP是連接可靠的

  B.HTTP請求的類型有get, post, put, delete,head

  C.HTTP默認端口號為80,HTTPS默認端口號為443,FTP默認端口號為21

  D.根據HTTP規范,GET請求用于信息獲取,并且應該是安全的和冪等的

11、兩服務器相距1500km,一次ping請求耗時多長(4,8,16,32)

12、文件系統管理的最小磁盤空間單位(扇區,簇)

13、在移動端瀏覽器,頁面采用click事件,會存在300ms的延遲,為什么?(要預先處理一些操作,還有判斷是否是雙擊操作)

14、A和B玩紐扣游戲,一共16個紐扣,兩人輪流來取,每人每次可以選取1個或3個或6個(不允許不取),規定誰取完最后的紐扣誰贏。如果讓A先取,則A的必勝策略下第一步應該取?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/285201.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/285201.shtml
英文地址,請注明出處:http://en.pswp.cn/news/285201.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Windows下Visual studio 2013 編譯 Audacity

編譯的Audacity版本為2.1.2&#xff0c;由于實在windows下編譯&#xff0c;其源代碼可以從Github上取得 git clone https://github.com/audacity/audacity。 1. 編譯WxWidgets Audacity使用wxWidgets作為GUI的框架&#xff0c;Audacity2.1.2需要wxWidgets 3.0.2&#xff0c;所以…

[轉]解決Android studio升級到3.5的一些問題

最近Android studio升級到最新的3.5以后&#xff0c;出現了很多問題&#xff0c;記錄一下&#xff1a; 1.NDK Resolution Outcome: Project settings: Gradle model version5.4.1, NDK version is UNKNOWN 這個是因為升級到3.5以后&#xff0c;原來的ndk被刪除了&#xff0c;在…

【EPS精品教程】EPS2016三維測圖版安裝教程(附EPS2016安裝包下載地址)

文章目錄 一、安裝過程二、軟件安裝包下載EPS地理信息工作站是北京清華山維新技術開發有限公司歷經十五年精心研發和打造,為滿足“以地理信息服務為中心”的信息化測繪生產需求而推出的測繪生產活動多種業務模塊集成化軟件系統。主要功能有: (1)測繪與地理信息多業務模塊集…

據廖雪峰python3教程----python學習第十三天

在OOP程序設計中&#xff0c;當我們定義一個class的時候&#xff0c;可以從某個現有的class繼承&#xff0c;新的class稱為子類&#xff08;Subclass&#xff09;&#xff0c;而被繼承的class稱為基類、父類或超類&#xff08;Base class、Super class&#xff09;。 編寫一個名…

《增廣賢文》

&#xff08;《增廣賢文》&#xff09;&#xff0c;并非吾原創。其中人生之道理&#xff0c;今之看來&#xff0c;雖有偏激之處&#xff0c;未嘗不有警醒之用。吾輩取精去糟&#xff0c;察納雅言即可。———————————————————————————————————…

禁錮自己的因素,原來有這么多

2022年的7月&#xff0c;朋友圈都能看到喜慶的時刻&#xff0c;慶祝香港回歸25周年&#xff0c;這確實是一個具有偉大里程碑的意義。同時也是建黨101周年&#xff0c;滿滿的榮譽感&#xff0c;隔著朋友圈都能感受到喜慶。家事國事天下事&#xff0c;事事關心&#xff0c;關心但…

C語言試題152之一個偶數總能表示為兩個素數之和

??個人主頁:個人主頁 ??系列專欄:C語言試題200例 ??推薦一款模擬面試、刷題神器?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 題目:一個偶數總能表示為兩個素數…

[轉]Xshell連接win10 Linux子系統

配置SSH服務&#xff1a; sudo apt-get remove --purge openssh-server ## 先刪ssh sudo apt-get install openssh-server ## 在安裝ssh sudo rm /etc/ssh/ssh_config ## 刪配置文件&#xff0c;讓ssh服務自己想辦法鏈接 sudo service ssh --full…

有兩個地方,用到了javabean對象和屬性字符串值之間的轉換

1.有兩個地方&#xff0c;用到了javabean對象和屬性字符串值之間的轉換 2.一個是接入層spring mvc&#xff0c;將json字符串參數轉換為javaBean。通過RequestBody javaBean方式 3.另一個是&#xff0c;mybatis中javeBean對象與數據庫字段值之間的轉換。 在sql語句的insert/upda…

【EPS精品教程】EPS2016三維測圖軟件常用快捷鍵(建議收藏)

EPS2016三維測圖軟件常用快捷鍵(建議收藏) 狀 態鍵盤位置功能名稱功能描述選擇Shift拖點按下鼠標左鍵移動光標,將目標點拖到其他位置C閉合使打開的當前線閉合,閉合的當前線打開X回退一點從當前點回退一點Shift+X回退多點從當前點開始刪除多點(到光標指向點)Ctrl+T刪除刪除當…

記一個并發規則驗證實現

最近在做一個簡單的風控&#xff0c;其中有一塊需求是這樣的&#xff0c;當主請求參數到達后&#xff0c;會根據這些參數&#xff0c;看調起幾個并發規則&#xff0c;這些規則各自有自己的驗證邏輯&#xff0c;每個規則執行時間長短都不確定&#xff0c;當規則 執行完后&#x…

EIGRP個人學習筆記

【理論部分】1、EIGRP的主要特征&#xff1a;①Cisco專有協議(高級dv路由)&#xff1b;②支持VLSM; ③觸發、增量更新&#xff1b;---------減少帶寬的占用④支持多層網絡協議ApplleTalk,IP 和 Novell Netware等協議&#xff1b;⑤收斂速度快&#xff1b;----------采用dual算法…

C語言試題153之判斷一個素數能被幾個 9 整除

??個人主頁:個人主頁 ??系列專欄:C語言試題200例 ??推薦一款模擬面試、刷題神器?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 題目:判斷一個素數能被幾個 9 整除…

[轉]Zookeeper入門看這篇就夠了

Zookeeper是什么 官方文檔上這么解釋zookeeper&#xff0c;它是一個分布式服務框架&#xff0c;是Apache Hadoop 的一個子項目&#xff0c;它主要是用來解決分布式應用中經常遇到的一些數據管理問題&#xff0c;如&#xff1a;統一命名服務、狀態同步服務、集群管理、分布式應用…

微服務-springcloud(eureka實踐, nacos實踐)

Spring 體系圖 版本關系 eureka 實踐 1 父工程依賴 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.14</version> </parent> <dependencyManage…

Windows服務二:測試新建的服務、調試Windows服務

一、測試Windows服務 為了使Windows服務程序能夠正常運行&#xff0c;我們需要像創建一般應用程序那樣為它創建一個程序的入口點。像其他應用程序一樣&#xff0c;Windows服務也是在Program.cs的Main()函數中完成這個操作。首先我們在Main&#xff08;&#xff09;函數中創建一…

角度前方交會點坐標計算完整步驟

測量工作中&#xff0c;我們常常會遇到待測點被障礙物遮擋住觀測視線而無法進行觀測的情況。這時候我們就需要特殊的交會計算方法對待定點進行特別的觀測。 前方交會又稱為測角交會&#xff0c;是指從相鄰兩個已知點向待定點觀測兩個水平角&#xff0c;用以計算待定點的坐標。 …

Mysql 的子查詢

子查詢&#xff1a; 子查詢&#xff1a;嵌套在其它查詢中的查詢語句。&#xff08;又稱為內部查詢&#xff09; 主查詢&#xff1a;包含其它子查詢的查詢稱為主查詢。&#xff08;又稱外部查詢&#xff09; 非相關子查詢&#xff1a; 在主查詢中&#xff0c;子查詢只需要執行一…

【系統設計】指標監控和告警系統

在本文中&#xff0c;我們將探討如何設計一個可擴展的指標監控和告警系統。一個好的監控和告警系統&#xff0c;對基礎設施的可觀察性&#xff0c;高可用性&#xff0c;可靠性方面發揮著關鍵作用。下圖顯示了市面上一些流行的指標監控和告警服務。接下來&#xff0c;我們會設計…