產(chǎn)品經(jīng)理的技術(shù)修行筆記——數(shù)據(jù)結(jié)構(gòu)篇

方小白
11 評論 32806 瀏覽 201 收藏 9 分鐘
🔗 产品经理的核心价值是能够准确发现和满足用户需求,把用户需求转化为产品功能,并协调资源推动落地,创造商业价值

懂技術(shù)是產(chǎn)品經(jīng)理的加分項(xiàng),這是毋庸置疑的。為了經(jīng)營好這一個加分項(xiàng),產(chǎn)品經(jīng)理要為自己的技術(shù)能力定制一個修行計(jì)劃。

很多同學(xué)在產(chǎn)品入門的時候都會考慮到一個問題——產(chǎn)品經(jīng)理需要懂技術(shù)嗎?這個問題也許沒有準(zhǔn)確的答案,但是一個懂技術(shù)的產(chǎn)品經(jīng)理確實(shí)有很明顯的優(yōu)勢。

  • 一方面產(chǎn)品經(jīng)理在日常工作中,接觸到最多的一類人,就是程序員,懂技術(shù)能減少與技術(shù)同學(xué)的溝通成本;
  • 另一方面,許多成功的產(chǎn)品經(jīng)理都是技術(shù)出身,因?yàn)榭梢詮母娴木S度去規(guī)劃產(chǎn)品的未來。

所以懂技術(shù)是產(chǎn)品經(jīng)理的加分項(xiàng),這是毋庸置疑的。為了經(jīng)營好這一個加分項(xiàng),產(chǎn)品經(jīng)理要為自己的技術(shù)能力定制一個修行計(jì)劃。

本文將與大家分享數(shù)據(jù)類型相關(guān)的基礎(chǔ)知識,希望可以共同學(xué)習(xí),共同進(jìn)步。

一、基礎(chǔ)名詞理解

  • 數(shù)據(jù):對客觀事物的符號表示,在計(jì)算機(jī)科學(xué)中指所有能輸入到計(jì)算機(jī)中,并被計(jì)算機(jī)程序處理的符號的總稱。
  • 數(shù)據(jù)項(xiàng):是組成數(shù)據(jù)對象的不可分割的最小單位。
  • 數(shù)據(jù)元素:是數(shù)據(jù)的基本單位,在計(jì)算機(jī)程序中通常作為一個整體進(jìn)行處理。數(shù)據(jù)元素可以由數(shù)據(jù)項(xiàng)組成。
  • 數(shù)據(jù)對象:性質(zhì)相同的數(shù)據(jù)元素的集合,是一個數(shù)據(jù)的一個子集。

為了更清晰地對以上幾個名詞進(jìn)行理解,舉一個簡單的例子:

以學(xué)生為例,這里引進(jìn)幾個名詞,某班級,學(xué)生張三,學(xué)生張三的學(xué)號與姓名。在這個例子中,學(xué)生張三就是一個數(shù)據(jù)元素,它由張三的學(xué)號與姓名組成。那么學(xué)號、姓名就是數(shù)據(jù)項(xiàng),張三和某班級的其他學(xué)生性質(zhì)相同,并且共同組成了這個某班級。那么某班級就是學(xué)生數(shù)據(jù)元素的集合,即一個數(shù)據(jù)對象,可以表示為:班級={學(xué)生1,學(xué)生2,學(xué)生3……..}。

了解了基本的數(shù)據(jù)概念,再來看看數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)類型:

  • 數(shù)據(jù)結(jié)構(gòu):相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。
  • 存儲結(jié)構(gòu):數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)中的表示(映射),即數(shù)據(jù)的物理結(jié)構(gòu)。
  • 數(shù)據(jù)類型:一個值的集合和定義在這個值集上的一組操作的總稱。
  • 抽象數(shù)據(jù)類型:ADT,一個數(shù)學(xué)模型以及定義在該模型上的一組操作。

還是以學(xué)生為例,再引進(jìn)一個新的名詞——學(xué)生名單表。

學(xué)生名單表就屬于數(shù)據(jù)結(jié)構(gòu)的一種——表結(jié)構(gòu)。學(xué)生信息中可能存在年齡,以數(shù)字來進(jìn)行描述,那么年齡就可能是整型這種數(shù)據(jù)類型的一個字段。

總結(jié)來說,數(shù)據(jù)結(jié)構(gòu)定義了一組按照某些關(guān)系結(jié)合在一起的數(shù)組元素,數(shù)據(jù)類型不僅定義了一組帶結(jié)構(gòu)的數(shù)據(jù)元素,而且還在其上定義了一組操作。

以下為基本的數(shù)據(jù)類型整理:

二、基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)類型整理

1.? 線性表

定義:線性表是最常用且是最簡單的一種數(shù)據(jù)結(jié)構(gòu)。形如:a1、a2、a3…an,這樣含有有限的數(shù)據(jù)序列,我們就稱之為線性表。

相關(guān)概念

  1. 線性鏈表:用一組任意的存儲單元存儲線性表的數(shù)據(jù)元素。
  2. 數(shù)據(jù)域:存儲數(shù)據(jù)元素的域。
  3. 指針域:存儲直接后繼存儲位置的域。

舉例理解:一年12個月,就可表示為線性表的形式,因?yàn)槊總€月只有一個直接前驅(qū)和一個直接后繼。線性表的順序結(jié)構(gòu)表示的時候,它的最大的缺點(diǎn)就是在插入和刪除的時候,需要移動大量的元素。

2.? 棧和隊(duì)列

定義:

  • 棧是指限定僅在表尾進(jìn)行插入或者刪除操作的線性表,表尾端稱為棧頂,表頭端稱為棧底。
  • 隊(duì)列是指只允許在一端進(jìn)入插入,另一端進(jìn)行刪除的線性表,插入端稱為隊(duì)尾,刪除端稱為隊(duì)頭。

區(qū)別表現(xiàn)為:棧為“后進(jìn)先出”,隊(duì)列為“先進(jìn)先出”。

舉例理解:棧和隊(duì)列都是我們在進(jìn)行產(chǎn)品邏輯設(shè)計(jì)時經(jīng)常使用到,比如:我們進(jìn)行一個有層級順序的頁面設(shè)計(jì)時,設(shè)定順序?yàn)椋喉撁?->頁面2->頁面3,當(dāng)用戶在頁面3 時,點(diǎn)擊返回,必須先返回頁面2,才能繼續(xù)返回到頁面1,這就是棧的設(shè)計(jì)設(shè)計(jì)思維。

3. 串

定義:串是零個或多個字符組成的有限序列。一般記S=‘a(chǎn)1a2….an ’其中,S是串名,單引號括起的字符序列是串值;ai(1〈=i〈=n)可以是字母,數(shù)字或其它字符。

相關(guān)概念:

  1. 串的長度:串中所包含的字符個數(shù)為該串的長度。
  2. 空串:長度為零的串稱為空串,它不包含任何字符。

舉例理解:串多用于字段的聯(lián)結(jié)或者分解。舉例來說:常見的綜藝名稱”綜藝名+更新時間“,就是通過將綜藝名字段與綜藝更新時間字段這兩個串進(jìn)行聯(lián)結(jié),最終展現(xiàn)給用戶一個合并形成的綜藝名稱。

4 . 樹

定義:樹形結(jié)構(gòu)是非線性的數(shù)據(jù)結(jié)構(gòu),它是由n(n>=1)個有限節(jié)點(diǎn)組成一個具有層次關(guān)系的集合。

相關(guān)概念:

  1. 度:結(jié)點(diǎn)擁有的子樹的數(shù)量稱為樹的度。
  2. 二叉樹:每個結(jié)點(diǎn)至多有2個子樹且子樹有左右之分,次序不能顛倒,這樣的樹稱為二叉樹。

舉例理解:比較常見的微信公眾號的頂部菜單和視頻網(wǎng)站的分類導(dǎo)航,就采用了樹的設(shè)計(jì)思維。

三、總結(jié)

對于非技術(shù)型產(chǎn)品經(jīng)理而言,不需要深入了解每個數(shù)據(jù)結(jié)構(gòu)的函數(shù)、方法,但是了解并理解數(shù)據(jù)結(jié)構(gòu)的基本概念與特點(diǎn),不但可以在產(chǎn)品邏輯、業(yè)務(wù)流程設(shè)計(jì)時,借鑒數(shù)據(jù)結(jié)構(gòu)相關(guān)的設(shè)計(jì)思維,而且可以減少和技術(shù)同學(xué)溝通的成本,更好地相互理解。

以上是本次的數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)筆記,可能會有一些不合理的地方,希望共同學(xué)習(xí)共同進(jìn)步。

參考教材:數(shù)據(jù)結(jié)構(gòu)(C語言版)

 

作者:方小白,2年互聯(lián)網(wǎng)產(chǎn)品經(jīng)驗(yàn),專注用戶增長與會員運(yùn)營。

本文由@方小白 原創(chuàng)發(fā)布于人人都產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自 Unsplash,基于 CC0 協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 很不錯的筆記,能不能在數(shù)據(jù)類型表中,補(bǔ)充下栗子說明下用法

    回復(fù)
  2. 如果產(chǎn)品懂這么多,我覺得很牛逼。我表示完全不懂在講啥子

    回復(fù)
  3. 兄弟這是C語言數(shù)據(jù)結(jié)構(gòu)的課程吧!

    來自廣東 回復(fù)
  4. 同學(xué),以一個技術(shù)的角度看來..如果開始接觸就是這個,有點(diǎn)難…

    來自北京 回復(fù)
    1. 嗚,非技術(shù)的看得一臉懵

      來自浙江 回復(fù)
  5. 一、基礎(chǔ)名詞理解最后的數(shù)據(jù)類型整理表格,為何沒有舉例總結(jié)。表示看不懂…
    其他的倒是很好理解呢

    來自廣東 回復(fù)
  6. 之前我自己自學(xué)過前端開發(fā)以及java后臺,設(shè)計(jì)起功能來自己能預(yù)估實(shí)現(xiàn)的可能性以及成本,另外自己對平面設(shè)計(jì)也很了解,能夠?qū)⒂脩襞c平臺的交互設(shè)計(jì)得很簡潔,這大概就是和開發(fā)和ui溝通的最好的收獲了

    來自四川 回復(fù)
    1. 你好 厲害!真的厲害呢!厲害厲害厲害!

      來自北京 回復(fù)
  7. 更重要的能力應(yīng)該是構(gòu)建數(shù)據(jù)模型的能力和數(shù)據(jù)關(guān)系的能力

    這點(diǎn)是和編程的思想是相通

    來自北京 回復(fù)
  8. 認(rèn)真的看完了,但是好多還不太理解,有點(diǎn)兒抽象,只是一篇筆記稿。還是要感謝樓主!

    來自北京 回復(fù)
专题
97268人已学习11篇文章
不管你是产品、运营、设计、还是技术,流程图都是基础技能。
专题
12699人已学习13篇文章
产品经理在日常工作中,除了要跟进和把控产品的整体流程以外,也要对产品后续的销售策略进行规划;销售策略的规划可以让产品经理对于用户的场景以及体验等更加熟悉。本专题的文章分享了产品的销售策略。
专题
12880人已学习13篇文章
对数据进行监控,分析异常数据,是数据分析常见的工作内容。本专题的文章分享了如何做好数据异常分析。
专题
12291人已学习16篇文章
栅格系统在页面排版布局、尺寸设定方面给了设计者直观的参考,它让页面设计变得有规律,从而减少了设计决策成本。本专题的文章分享了浅析栅格系统。
专题
16118人已学习13篇文章
在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做Open API。 而提供开放API的平台本身就被称为开放平台。本专题的文章分享了开放平台的搭建思路。