2012-03-30 109 views
2

如果我有一些任意的數據結構,我能說的這種結構,如果在以下情況下成立:調用數據結構的這些屬性是什麼?

(1)如果我把五行到數據結構,那麼它是可以檢索那些相同的五行以相同的順序。例如,如果我把數字4,6,2和7放到一個數組中,並且我檢索第一個元素,它將是4.如果我把五個元素(可以比較)轉換爲數據結構,那麼它們將總是按照一些標準進行排序。也就是說,如果標準是增加幅度,我把4,6,2和7放到這個結構中,並且我檢索第一個元素,它將是2.(3)如果我把五個元素放入一個數據結構,我沒有能夠執行的操作,這將確保我恢復放入它的第一個元素。 (4)如果我將五個元素放入其中,那麼添加結構中已有的元素將不會對結構產生影響。

編輯:我不是要求具有這些屬性的數據結構的名稱。其中一個就像一個List,2將是一個二叉搜索樹或其他東西,3個是Hash,四個是HashSet或許多不允許重複的集合實現。我在尋求物業名稱。例如,說「對於這個問題,我們需要使用有序的數據結構...」

+1

這功課嗎? – 2012-03-30 23:56:15

+1

@OliCharlesworth沒有。我正在和一位朋友進行對話,第一次使用「排序」,第二次使用「排序」,但他不同意這些是正確的描述。 – Jeremy 2012-03-31 00:01:44

+1

(3)被稱爲垃圾收集*。 – 2012-03-31 00:03:02

回答

4

(1)是訂購;

(2)可能是排序的; (3)無序;

(4)不包含重複

對不起,(4)是一種逃避現實的東西,但它是所有我能想到的。

+1

井4基本上是Set的定義。 * distinct *對象的集合。想不到任何形容詞。 'settiveness'有一個有趣的環,但我擔心不在任何字典中;) – Voo 2012-03-31 01:00:37

0

(1)是一個隊列,(2)排序列表,我不完全明白你的意思(3),(4)是一組。

+0

我會說(2)是「排序」,而不僅僅是「排序」。 http://stackoverflow.com/questions/1084146/what-is-the-difference-between-an-ordered-and-a-sorted-collection – Thilo 2012-03-31 00:03:14

+0

你說得很對,謝謝。 – jimw 2012-03-31 00:40:37

2

(1)FIFO:該數據結構保持插入順序

(2)分選發生在數據結構

(3)這不是一個屬性,但它們的缺乏。基於哈希的結構將做到這一點。除非你的意思是你想要保證元素會被洗牌(你的常規HashMap在其所做的事情上是確定性的)。在這種情況下,它將是一個「隨機」或「洗牌」集合。一臺攪拌機。

(4)的一組,該數據結構可以確保不同的元件(意味着比較發生,並且排序或散列)

0

這是一個關於什麼是這些4種數據類型家庭作業? Googling的java數據結構教會了我幾件事。我懷疑你會喜歡這個鏈接:http://www.theparticle.com/javadata2.html

+0

我知道你沒有代表發表評論,但這仍然不是一個真正的答案。 – BoltClock 2012-03-31 00:57:32

+0

@BoltClock,我也沒有代表下來的問題。這個問題讓我想起了對數據的過於簡單的介紹以及在介紹中對C進行排序時的哈希。對不起,我試圖指出他的答案... – 2012-03-31 03:53:30

-1

我不認爲你列出的所有場景都存在一個數據結構。

一般來說,如果要實現這樣的結構,它可以稱爲抽象數據類型。使用這種數據類型,您可以提供所有功能,即抽取與上述方案相對應的工作。

在Java中,List, Queue等等都是抽象數據類型的例子。

+0

我不認爲OP要「一個結構來規則他們都!「! (1)和(2)已經互斥 – kaveman 2012-03-31 00:10:34