最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

校招算法之數(shù)組1:數(shù)組基礎(chǔ)必備必掌握

2022-05-09 16:05 作者:滌生大數(shù)據(jù)  | 我要投稿

? ? ? 校招不同于社招,不管是科班的大數(shù)據(jù)/計算機相關(guān)類專業(yè)的,還是其他專業(yè)轉(zhuǎn)行大數(shù)據(jù)的小伙伴。同樣大數(shù)據(jù)校招面試也是更看重基礎(chǔ)(尤其是中大廠),校招不僅需要掌握大數(shù)據(jù)相關(guān)技術(shù),還需要掌握一些基礎(chǔ)知識(如計算機基礎(chǔ),算法數(shù)據(jù)結(jié)構(gòu)),校招面試內(nèi)容雜而多,如何系統(tǒng)化備戰(zhàn)?
?????桐哥,壯哥,21年畢業(yè)研究生,目前在職快手,米哈游。倆人是校招收割機,校招拿到了美團,字節(jié),快手,京東,滴滴,攜程,小米,vivo,米哈游,好未來,小紅書,garena,貝殼找房,招行,興業(yè)銀行等多家大中廠大數(shù)據(jù)校招Offer。現(xiàn)在趁著熱乎勁,親自帶大家進行大數(shù)據(jù)校招學習。結(jié)合自身校招經(jīng)歷,親自系列化總結(jié)大數(shù)據(jù)校招知識,剖析核心知識,系統(tǒng)化帶大家備戰(zhàn)校招,規(guī)劃學習,考勤打卡。懶人模式--你只需要負責完成每天每周打卡學習即可,而不需要擔心應(yīng)該學習什么?

校招必備路線圖

校招專題規(guī)劃請看視頻:

萬里長征第一步,本周我們的小伙伴們在老師的帶領(lǐng)下已經(jīng)學習完了整個數(shù)組系列。

數(shù)組系列題目

1.?刷題必需知識儲備

  1. 掌握主流編程語言之一:C語言,C++,JAVA,或者Python等(建議使用java)

  2. 數(shù)組相關(guān)基礎(chǔ)概念知識

2.數(shù)組基礎(chǔ)知識概述

? ? ? 數(shù)組,作為互聯(lián)網(wǎng)行業(yè)校招算法考察的重點,其基本操作是必須掌握的。數(shù)組的特性是可以通過下標訪問元素,直接定義的數(shù)組需要指定數(shù)組長度且定義后長度不能修改,本文目的主要幫助大家熟悉數(shù)組的操作,為較基礎(chǔ)的題目。

? ? ? 數(shù)組是在程序設(shè)計中,把具有相同類型的若干元素按有序的形式組織起來的一種形式。?數(shù)組?(Array)是有序的元素序列。若將有限個類型相同的變量的集合命名,那么這個名稱為數(shù)組名。組成數(shù)組的各個變量稱為數(shù)組的分量,也稱為數(shù)組的元素。

???數(shù)組作為線性表的實現(xiàn)方式之一,數(shù)組中的元素在內(nèi)存中是連續(xù)存儲的,且每個元素占相同大小的內(nèi)存。

???注意:在不同的編程語言中,數(shù)組的實現(xiàn)方式具有一定差別。比如?C++?和?Java?中,數(shù)組中的元素類型必須保持一致,而?Python?中則可以不同。相比之下,Python?中的數(shù)組(稱為?list)具有更多的高級功能。

???在筆面試過程中,一般需要重點掌握一維數(shù)組和二維數(shù)組的使用。

2.1一維數(shù)組

???數(shù)組是存儲在連續(xù)內(nèi)存空間上的相同類型類型的集合,其通過索引(腳標)快速訪問每個元素的值。在大多數(shù)編程語言中,腳標(索引)從?0?算起。數(shù)組是由相同類型的數(shù)據(jù)元素構(gòu)成的有限集合,一維數(shù)組可以看作一個線性表。一維數(shù)組的元素有1個下標。

數(shù)組圖解

劃重點咯:

數(shù)組下標都是從0開始的。
數(shù)組在內(nèi)存空間的地址是連續(xù)的。
刪除或者增添元素時難免要移動其他元素的地址。

2.2二維數(shù)組

二維數(shù)組也可以看作一個線性表X=(X0,X1,X2,…,Xn-1),只不過每一個數(shù)據(jù)元素Xi也是一個線性表。?

二維數(shù)組的元素中有?2?個下標。如int?a[3][2]的元素在內(nèi)存中按行連續(xù)放置:

二維數(shù)組本質(zhì)

? ? 二維數(shù)組樣式:

但無論是一維還是二維,數(shù)組是在內(nèi)存中連續(xù)存儲多個元素的結(jié)構(gòu),在內(nèi)存中的分配也是連續(xù)的,數(shù)組中的元素通過數(shù)組下標進行訪問,數(shù)組下標從0開始。

2.3?數(shù)組使用及優(yōu)缺點

優(yōu)點

1.按照索引查詢元素速度快
2.按照索引遍歷數(shù)組方便

缺點

1.數(shù)組的大小固定后就無法擴容了
2.數(shù)組只能存儲一種類型的數(shù)據(jù)
3.添加,刪除的操作慢,因為要移動其他的元素。

數(shù)組適用頻繁查詢,對存儲空間要求不大,很少增加和刪除的情況。這里的適用場景需要可以記憶一下,后續(xù)練習中會有體會哈。


3.數(shù)組基礎(chǔ)題必掌握

???數(shù)組的特性是可以通過下標訪問元素,直接定義的數(shù)組需要指定數(shù)組長度且定義后長度不能修改,本節(jié)題目主要幫助大家熟悉數(shù)組的操作,為較基礎(chǔ)的題目

1.加一(力扣66)

給定一個由?整數(shù)?組成的?非空?數(shù)組所表示的非負整數(shù),在該數(shù)的基礎(chǔ)上加一。最高位數(shù)字存放在數(shù)組的首位,?數(shù)組中每個元素只存儲單個數(shù)字。

你可以假設(shè)除了整數(shù)?0?之外,這個整數(shù)不會以零開頭。

示例 1:
輸入:digits = [1,2,3]輸出:[1,2,4]解釋:輸入數(shù)組表示數(shù)字 123。

思路:

本題以數(shù)組的形式給定一個數(shù)字,數(shù)組中每個元素只存儲單個數(shù)字。所以加1的操作自然是從數(shù)組的最后一位開始操作。主要考察數(shù)組的基本操作。

1.對數(shù)組最后一位開始加1操作;2.需要判斷是否進位操作-> 加1大于10則進位1,當前下標為0;加1小于10則不需要進位,直接+1即可;3.繼續(xù)對高位下標進行第2步操作

實現(xiàn)

2.最大連續(xù)1的個數(shù)(力扣485)

給定一個二進制數(shù)組?nums?,?計算其中最大連續(xù)?1?的個數(shù)。

示例 1:輸入:nums = [1,1,0,1,1,1]輸出:3解釋:開頭的兩位和最后的三位都是連續(xù) 1 ,所以最大連續(xù) 1 的個數(shù)是 3.

思路:

同樣考察數(shù)組的基本操作,對數(shù)組中連續(xù)的1進行計數(shù),并取最大的連續(xù)值。

實現(xiàn)

3.楊輝三角(力扣118)

給定一個非負整數(shù)?numRows,生成「楊輝三角」的前?numRows?行。示例?1:輸入: numRows = 5
輸出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
楊輝三角其實就是高中學過的二項式系數(shù)的性質(zhì),規(guī)律如下圖。

思路:使用兩個for循環(huán)遍歷數(shù)組元素,在外層循環(huán)中初始化每一個第二層數(shù)組的大小。在內(nèi)層循環(huán)中,先將兩側(cè)的數(shù)組元素賦值為1,其他數(shù)值通過公式計算,然后輸出數(shù)組元素。實現(xiàn)以下代碼中包含兩種方法,第一種是基本數(shù)組處理的方法,第二種遞歸方法較為推薦解決該類問題


校招算法之數(shù)組1:數(shù)組基礎(chǔ)必備必掌握的評論 (共 條)

分享到微博請遵守國家法律
安岳县| 张家口市| 和龙市| 安国市| 荣成市| 英德市| 图木舒克市| 临邑县| 隆林| 焉耆| 偃师市| 麦盖提县| 新昌县| 东乌珠穆沁旗| 昭苏县| 吉林省| 义马市| 揭东县| 揭阳市| 景泰县| 都安| 赤城县| 雅江县| 佛山市| 嘉兴市| 兴安县| 宁陵县| 惠安县| 南和县| 彩票| 湛江市| 固镇县| 婺源县| 兴宁市| 穆棱市| 石狮市| 塘沽区| 临沂市| 元江| 惠州市| 盐池县|