其他分享
首页 > 其他分享> > 重修数据结构:The CROW

重修数据结构:The CROW

作者:互联网

文章目录

The Crow

Definition CROW(定义 CROW)

Definition CROW: Build in limit. The maximum number of individual items a mind can hold in focus at any one time.

定义 CROW:内置限制。一个头脑一次可以集中处理的最大单个项目数。

Definition FOCUS: A choice. The selected items you choose to think about, hold in your mind, at any one time.

定义 FOCUS:选择。您选择考虑的所选项目随时都牢记在心。

Knowing What is your CROW is not a contest to see who can have the highest number. What is important is that you realize that you have a CROW. Look into yourself and see the CROW in action.

知道自己的 CROW 并不是争辩谁可以拥有最高的数目。重要的是要意识到自己有 CROW。调查自己,看看 CROW 的作用。

CROW’s consequences(CROW 导致的后果)

The consequences of the limit of the number of items one can hold in focus.

人的项目数限制的后果。

1. The INFANT - Their first steps…

Definition SENSATION: Individual stimuli.

定义 SENSATION:个体刺激

Definition PERCEPTION: Automatic integrations of sensations by the mind into one smell, one image, one sound, one taste… Etc.

定义 PERCEPTION:头脑中的感觉自动整合为一种气味,一种图像,一种声音,一种味道…等等。

Notice that your mind does the integration automatically, it takes MANY individual sensations and integrates them into ONE perception.

请注意,您的大脑会自动进行整合,需要许多个感知并将其整合到一个感觉。

The resulting single perception easily fit into the size of your minds focus, the crow. However, as you grow up, the number of perceptions accumulates, becoming overwhelming in type and number…

由此产生的单一感知能力很容易适应您的注意力范围,即 CROW。但是,随着您的成长,感知的数量不断累积,其类型和数量变得越来越庞大……

2. The CHILD - the next step

Let’s use the same method, with all those perceptions… “Take MANY perceptions and convert it into ONE” abstraction. This time however the “Many-To-One Conversion” process will not be automatic. You have to CHOOSE to do it.

让我们对所有这些感知使用相同的方法…“采用许多感知并将其转换为一个”抽象。但是,这次“多对一转换”过程将不会自动进行。您必须选择这样做。

What is the ONE thing you are creating when you convert many perceptions to one new thing? YOU are creating ‘A’ mental entity, a word, an idea, a concept.

当您将多种观念转化为一件新事物时,您正在创建的一件事物是什么?您正在创建一个心理实体,一个词,一个想法,一个概念。

Words are your friend. A word represents all the MANY things that have that defined property. One WORD is easier to deal with mentally, rather than the huge number of actual things that have that property. Words are tools of cognition.

单词是你的朋友。一个词代表具有定义属性的所有许多事物。一个单词在思想上更容易处理,而不是拥有该属性的大量实际事物。言语是认知的工具。

DEFINITION Defining property: Characteristic(s) that explain the most about a thing.

定义 属性:最能解释事物的特性。

DEFINITION Concept: Mental Entity, represented by a word. That one word represents ALL things that share the defining characteristic(s).

定义 概念:心理实体,用单词表示。这个词代表了所有具有共同特征的事物。

DEFINITION Concept Formation: The act of looking at many things, selecting out those that have similar characteristics (defining characteristics) and creating a word that is use to represent all those specific things; past, present and future.

定义 概念形成:观察许多事物,选择具有相似特征(定义特征)的事物,并创建一个用来表示所有特定事物的单词的行为;过去,现在和未来。

DEFINITION First level concept: Concepts formed directly from observations of the physical world/perceptions.

定义 一级概念:直接从对物理世界/感知的观察中形成的概念。

DEFINITION Volitional: Choice, as in choosing to create and use concepts, as necessitated by the limited size of your crow.

定义 自愿:选择,如选择创建和使用概念时,CROW 有限的尺寸所必需。

3. The ADULT mind - Growing up Mentally

It is Creating Concepts from Concepts.

它是从概念创造概念。

AbstractionStage
Physical RealityThings have an identity
Sensations from some organsAutomatic:Structures
Perceptions from SensationsAutomatic:Infant level
Concepts from PerceptionsVolitional:Child level
Concepts from ConceptsVolitional:Adult level Mental Functioning

Conceptual Hierarchy(概念层次)

Concepts should NOT be disembodied things, floating around inside you head, disconnected from reality. You should be able to trace your concepts ‘up to the most abstract generalized concept’ and ‘down to the physical foundation of the conceptual hierarchy’

概念不应该是无形的东西,漂浮在您的脑海中,与现实脱节。您应该能够“向上追溯到最抽象的广义概念”和“向下追溯到概念层次结构的物理基础”。

DEFINITION KNOWLEDGE/UNDERSTANDING: Achieved only when you have a concept linked down through the conceptual hierarchy to the physical.

定义 知识/理解:仅当您有一个概念通过概念层次结构向下链接到物理对象时才可实现。

DEFINITION CONCEPUTAL HIERARCHY: also called a Conceptual Tree, or Inheritance Hierarchy. Achieved by the Identification of a new concept that is built upon prior concepts.

定义 概念层次结构:也称为概念树或继承层次结构。通过识别基于先前概念的新概念来实现。

The world around you…(总结升华)

In every course of study you undertake, you should create a mental hierarchy for that topic. Why, it makes it vastly easier to hold the world in your mind, thus you become much quicker at applying that understanding and you become creative and actually enjoy your life.

在您进行的每门学习课程中,您都应该为该主题创建一个思维层次。为什么,这使您轻松掌握世界,因此您可以更快地运用这种理解,变得富有创造力,并真正享受生活。

The Puzzle of life: Knowledge is knowing what the pieces are, and how they fit together. Nothing less !

人生之谜:知识就是知道各个部分是什么,以及它们如何组合在一起。没什么!

Be sure to be able to connect your ideas back to physical reality !

确保能够将您的想法与物理现实联系起来!


1. The Crow, Concepts and the Concept Hierarchy

Creating Concepts from Concepts:

在这里插入图片描述

Concepts should NOT be disembodied things, floating around inside you head, disconnected from reality. You should be able to trace your concepts ‘up to the most abstract generalized concept’ and ‘down to the physical foundation of the conceptual hierarchy’

概念不应该是无形的东西,漂浮在您的脑海中,与现实脱节。您应该能够“向上追溯到最抽象的广义概念”和“向下追溯到概念层次结构的物理基础”。


2. Data, Data Structures, UML, ADT and Implementation

Digits – a Limited solution to your overflowing CROW…

数字是一个很好的概念和抽象。

How do you represent a count greater than the number of … number symbols/glyphs, greater then 9 ? Use a modern Number System.

数字系统是对数字更高一层的抽象。


3. C++ - IDE, Classes, ADT and the SDLC(Software Development Life Cycle)

Each step of the SDLC needs to be Documented and Seriously Reviewed, with signature sign off.

SDLC的每个步骤都必须记录在案,并经过认真审查,并签名签名。

The ’conceptual hierarchy’ in we discussed in the CROW lecture is called an ‘Inheritance Hierarchy’ in OOP.

Good programming is to only have functions public. WHY ? Well, when someone enters a value, you should pass the entered amount orvalue through a function to VALIDATE it. Good programming validates!

验证!


4. Lists

Dangling Pointers:

Issued delete ptrVar command.
Did not set ptrVar to NULL.
Memory released back to Memory Manager, and is now available for reuse.
Tried to access memory at that location. Someone else is using it.
Causes ERRORS.

Memory Leak:

Pointer Variable goes out of scope.
Memory Address that was in pointer variable, still held by OS as being used.
Causes you to run out of RAM… Think Internet 24 by 7, code running all the time.
Ways to fix are to RE-Start system to reset memory, or fix the code.

Good code example for pointer use:

int *myPointer = NULL;      //create the pointer, use NULL to indicate pointer is empty
myPointer = new int;        //allocate space in memory, assign address to pointer
*myPointer = 36;            //store a value to the memory location
delete myPointer;           //release memory back to memory manager, it now available for reuse
myPointer =NULL;            //use NULL to indicate pointer is empty

5. Search and Sort List - Big O

all comparison sorts, and so cannot perform better than O(nlog n) in the average or worst case.

integer sorting algorithms and other sorting algorithms that are not comparison sorts. As such, they are not limited by a O(nlog n) lower bound.


6. Stack

Stacks are commonly coded using pointers or arrays.


7. Queue

Queues are commonly coded using:

  1. Circular Array
    • cons: Maximum number of objects: add isFull operation.
  2. Open two direction linked list
    • pros: No maximum number of objects

8. Trees and Recursion

NOTE: an ADT LIST is a type of tree where each node has only one child.

Tree sare commonly coded using:

  1. linked Tree
    • pros: No maximum number of objects
  2. Array
    • cons: Maximum number of objects: add isFull operation

The Basic definition of Recursion: Recursion is the repetition of series of steps, and while doing so, breaks a problem down into successive smaller parts until they reach a situation where you can no longer break it into smaller parts… This smallest part is called the base or ending case.


9. Heaps


10. Priority Queue


11. Binary Search Tree (BST)

Recursion VS Iteration, Compare versions of Tree algorithms:

  1. Is the depth of recursion relatively shallow?
  2. Is the recursive solution shorter or cleaner?
  3. Is the recursive version much less efficient?

12. File I/O

  1. 读示例
  2. 写示例
  3. 异常处理示例

13. ADT Hash Table and Dictionary

Two keys that product the same hash value. Collisions occur when different elements are mapped to the same cell.

Hashing is the process that calculates where in an array a data item should be, rather then searching for it.

It allows efficient retrievals, insertions and deletions.

Hash function should be easy to compute and it should scatter the items evenly throughout the table.

Collisions occur when two different search keys hash into same array location. Two strategies to resolve collisions are using probing and chaining, respectively.


14. Graphs

We need to “mark” a vertex as visited. DFS uses a stack; BFS uses a queue


15. Sets and Bags

  1. Implementing Sets with Lists
  2. Implementing Sets with Binary Search Trees
  3. Implementing Sets with AVL Trees

16. Machine Learning - Neural Networks

A network is a graph with nodes and interconnection between nodes.

Neural visual networks are composed of many heterogeneous layers:

Today, modern managers are more interested in hiring Computer Science graduates who have knowledge of Computer Science AND a subject matter knowledge.

The point: Having a dual major, or at the very least a major in CS and a minor in a subject area, increase your ability to be hired and retain a good job.

Example: Computers and Genetics(The Wonders of the World–Seeing our Common Humanity)


标签:ADT,定义,CROW,重修,number,概念,数据结构,your
来源: https://blog.csdn.net/qq_39384184/article/details/111357246