Jump to content

Talk:Cartesian tree/GA1

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by David Eppstein (talk | contribs) at 19:02, 8 August 2023 (GA Review: Reply). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

GA Review

GA toolbox
Reviewing

Article (edit | visual edit | history) · Article talk (edit | history) · Watch

Reviewer: Ganesha811 (talk · contribs) 17:27, 4 August 2023 (UTC)[reply]


Hi! I'll be reviewing this article, using the template below. Sorry for the long wait! If you have any questions, feel free to ask them here. —Ganesha811 (talk) 17:27, 4 August 2023 (UTC)[reply]

As this is a subject (actually, a whole field) I'm unfamiliar with, I'm diving into a little bit of research to make sure I can adequately assess comprehensiveness and detail. Hope to complete the review in the next few days. —Ganesha811 (talk) 16:49, 5 August 2023 (UTC)[reply]
Ok, no hurry. —David Eppstein (talk) 20:59, 5 August 2023 (UTC)[reply]
Rate Attribute Review Comment
1. Well-written:
1a. the prose is clear, concise, and understandable to an appropriately broad audience; spelling and grammar are correct.
  • In general, some of the language is too technical and difficult for a novice reader to understand. I will make specific comments/suggestions on this as part of the prose review.
1b. it complies with the Manual of Style guidelines for lead sections, layout, words to watch, fiction, and list incorporation.
  • Pass, no issues.
2. Verifiable with no original research:
2a. it contains a list of all references (sources of information), presented in accordance with the layout style guideline.
2b. reliable sources are cited inline. All content that could reasonably be challenged, except for plot summaries and that which summarizes cited content elsewhere in the article, must be cited no later than the end of the paragraph (or line if the content is not in prose).
  • All reliable academic sources, no issues here. Pass.
2c. it contains no original research.
2d. it contains no copyright violations or plagiarism.
3. Broad in its coverage:
3a. it addresses the main aspects of the topic.
  • A sentence or two should be added to the lead, and a couple more to the body, on a very high-level, simple explanation of what a tree data structure is and how it works. This article is really only comprehensible now by going and reading a couple of other Wikipedia articles first, but it should be able to stand on its own.
3b. it stays focused on the topic without going into unnecessary detail (see summary style).
4. Neutral: it represents viewpoints fairly and without editorial bias, giving due weight to each.
  • No issues, pass.
5. Stable: it does not change significantly from day to day because of an ongoing edit war or content dispute.
  • No issues. Pass.
6. Illustrated, if possible, by media such as images, video, or audio:
6a. media are tagged with their copyright statuses, and valid non-free use rationales are provided for non-free content.
  • Pass, no issues, all are original works by nominator uploaded and released.
6b. media are relevant to the topic, and have suitable captions.
  • Some tweaking possible to captions - will handle under prose review. Provisional pass.
7. Overall assessment.
Re #3: I added some sentences to the start of the "Definitions" section providing glosses of the basic tree terminology used. It definitely does not belong in the lead. The phrasing of your comment "what a tree data structure is" already exhibits a misunderstanding: this is a mathematical structure, not a computer data structure. It can be represented by a data structure in a computer, and is used to define certain data structures, but it is not really a data structure on its own. Turning it into a data structure would require specifying additional information about how each node is represented in memory, what operations are to be performed on it and how, etc. —David Eppstein (talk) 06:14, 8 August 2023 (UTC)[reply]
Well, I suppose that goes to show how this topic can lead to confusion - I wrote "tree data structure" because our article on it is called "tree (data structure)", and the article on binary trees (linked in the first sentence of this article) states "a binary tree is a k-ary k=2 tree data structure". The key thing to remember is that Wikipedia is for a generalist reader, not a specialist one. Try to imagine coming to this page as someone with little to no background knowledge, who is seeing it for the first time. Jargon should be defined parenthetically, wikilinked, or both; and generally it is, but there are exceptions. For example, "node" could use a short parenthetical explanation the first time it is used.
Another example; in the lead, the sentence "The smallest number in the sequence is at the root of the tree; its left and right subtrees are constructed recursively from the subsequences to the left and right of this number" could be rewritten as follows:
The smallest number in the sequence is picked to be the starting node, or "root" of the tree. Each node in a Cartesian tree can have up to two "child" nodes which it is linked to. From the subsequence of numbers to the left of the chosen "root", the smallest number is chosen as a child node of the root node; the same process also occurs on the subsequence of numbers to the right of the root, resulting in two new nodes below the root. This process is then repeated until all numbers in the sequence have been added to the tree.
This is wordier, and a little awkwardly phrased (I'm sure you can improve on it!), but I think would be clearer for a novice reader. The lead, especially, should pay close attention to the issue of making sure a generalist reader can parse it correctly and easily. As the article goes on, it's appropriate to introduce more detail. —Ganesha811 (talk) 12:32, 8 August 2023 (UTC)[reply]
We (the second person plural pronoun) cannot (are unable to or maybe rather should not) explain (provide a more detailed explanation) for every (each one) of the words (units of meaning in the English language) that we use (incorporate into our sentences). That way lies madness. See WP:TECHNICAL, which states that an article should be written "as far as possible" for a wide audience, but not that all articles should be readable by all readers. This is an advanced computer science topic, suitable for third- or fourth-year computer science university students. Per WP:ONEDOWN, it should be readable by beginning computer science students, but not necessarily by, say, high schoolers or students of comparative literature. All beginning computer science students have seen binary trees. The more you elaborate the definitions of basic words, the more you hide the real content of the article and make it more difficult to read for people who already understand those words, the exact audience that we would hope is ready to read the article.
To this point, I'm a little surprised that you didn't expect me to provide a short parenthetical gloss of "number", the first time it is used. See Principia Mathematica, a famous work in mathematical logic that took the point of view that everything should be reduced to first principles. The consequence of applying this principle strictly was that it took hundreds of pages of dense logical formalism to prove that 1+1=2. —David Eppstein (talk) 17:32, 8 August 2023 (UTC)[reply]
There's no need to be sarcastic or rude. I'm trying to improve the article, as you are. I think a straightforward reading of WP:TECHNICAL says that while it is impossible to explain some subjects simply or without jargon, we should always make our best efforts to be clear to a general reader and guide them through a topic, especially in the lead. I think it's clear we will not see eye to eye on this, so I'm going to request a second reviewer come take a look. —Ganesha811 (talk) 17:53, 8 August 2023 (UTC)[reply]
I provided a gloss of the basic concepts needed for the article as you requested. You are now requesting a gloss of the terms used to define those basic concepts. That goes too far. A reader who needs that gloss-on-a-gloss is unready to ready this article, and no amount of gloss will help. All it will do will make the article so cluttered as to be unreadable by the readers who are ready for it. —David Eppstein (talk) 19:02, 8 August 2023 (UTC)[reply]