文章目录

    • The Crow
      • Definition CROW(定义 CROW)
      • CROW's consequences(CROW 导致的后果)
        • 1. The INFANT - Their first steps...
        • 2. The CHILD - the next step
        • 3. The ADULT mind - Growing up Mentally
      • Conceptual Hierarchy(概念层次)
      • The world around you....(总结升华)
  • 1. The Crow, Concepts and the Concept Hierarchy
  • 2. Data, Data Structures, UML, ADT and Implementation
  • 3. C++ - IDE, Classes, ADT and the SDLC(Software Development Life Cycle)
  • 4. Lists
  • 5. Search and Sort List - Big O
  • 6. Stack
  • 7. Queue
  • 8. Trees and Recursion
  • 9. Heaps
  • 10. Priority Queue
  • 11. Binary Search Tree (BST)
  • 12. File I/O
  • 13. ADT Hash Table and Dictionary
  • 14. Graphs
  • 15. Sets and Bags
  • 16. Machine Learning - Neural Networks

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.

它是从概念创造概念。

  • Abstraction
Abstraction Stage
Physical Reality Things have an identity
Sensations from some organs Automatic:Structures
Perceptions from Sensations Automatic:Infant level
Concepts from Perceptions Volitional:Child level
Concepts from Concepts Volitional: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

  • Array Heap
  • Linked Heap: Heaps are incredibly difficult to implement with pointers. Nearly all implementation of Heaps are simply done with arrays or vectors.

10. Priority Queue

  • ADT Unsorted List:

    • Very Inefficient.
  • ADT Sorted List:
    • More efficient. But when you insert a node, the LIST must be re-sorted.
  • ADT HEAP:
    • Very Efficient. The ADT Heap is a common Implementation of a Priority Queue, with its Min or MAX Parent-Child priority sort order.
  • Linked List:
    • Insert at the beginning of list –O(1), Find max O(N)–More Difficult to program.
  • Binary Search Tree:
    • Insert O(logN), Fine max O(logN).

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.

  • Collision with Chaining: Chaining lets each cell in the table point to a linked list of entries that map there.
  • Collision with Linear Probing: fast if table is sparse
  • Double Hashing: use 2nd hash function

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

  • Adjacency Matrix
  • Adjacency List

15. Sets and Bags

  • Sets(collections of elements with no duplicates and no ordering), and
  • Bags(collections of elements that allow duplicates but are not ordered)
  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.

  • Input Sensations( Automatic ): network of specialized neurons
  • Perceptions( Automatic ): Integrations of the Sensations to a single view. ( Many to one via a network of neurons)
  • Conception: Takes many Perceptions and abstract out key features. Conceptions… ( Volitional ), Achieved with a Network of Neurons

Neural visual networks are composed of many heterogeneous layers:

  • Input
  • Convolution: Feature extractions
  • Polling: Feature Abstraction
  • Fully Connected: Classification
  • Training

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)


重修数据结构:The CROW相关推荐

  1. [重修数据结构0x03]并查集、堆、优先队列(2021.8.11)

    前言 在做遍历的题目的时候,发现掌握一些特殊的数据结构和技巧有时对解决题目有着决定性的作用,不可不学.因此特地拿出来两天学习一下并查集.堆.优先队列.以后有更多思考和感悟再加补充吧.内容来自算法笔记, ...

  2. 编程范式 - 学习/实践

    1.应用场景 主要用于学习,理解编程范式的由来,演进以及如何使用合适的编程范式. 2.学习/操作 1.文档阅读 04 | 编程语言的进化-极客时间 2.整理输出 原文 你好,我是七牛云许式伟.今天我们 ...

  3. 内功重修之数据结构----数组

    毕业也有一段时间了,一直在做PHP开发,最近感觉到内功薄弱,所以是重新开始学习内功的时候了(参考郝斌数据结构视频教程) 动态数组的实现,本文以C语言实现一个数组功能(抽取几个基本方法),包括初始化数组 ...

  4. 数据结构与算法学习(第一天)

    之前数据结构其实学得不错,A+,但是已经快忘光了,所以重修一下(记录起来就不怕忘得快了,嘿嘿) 算法是用于解决特定问题的一系列的执行步骤 斐波那契数列 斐波那契数列(0,1,1,2,3,5,8,-), ...

  5. 03 重修C++之并发实战3.5-3.8(3end)

    上一篇:03 重修C++之并发实战3.3-3.4 03 重修C++之并发实战3.5-3.8(3end) 文章目录 03 重修C++之并发实战3.5-3.8(3end) 3.5 用 std::uniqu ...

  6. java数据结构红黑树上旋下旋_存储系统的基本数据结构之一: 跳表 (SkipList)

    在接下来的系列文章中,我们将介绍一系列应用于存储以及IO子系统的数据结构.这些数据结构相互关联又有着巨大的区别,希望我们能够不辱使命的将他们分门别类的介绍清楚.本文为第一节,介绍一个简单而又有用的数据 ...

  7. 20吉林大学计算机软件人工考研上岸分享--挂科重修过的我如何一年逆袭上岸吉大软件

    本人双非一战吉大上岸,大学时逃过课,包过宿,挂过科,重修过,前三年啥都干了,唯独没有好好学习过.最后一年冲刺了一把,努力一把,也给大学画上了一个圆满的句号.在此和大家分享下学习历程以及经验,供学弟学妹 ...

  8. c语言稀疏矩阵运算器,数据结构:稀疏矩阵运算器

    题目:设计一个程序,实现一个能进行稀疏矩阵基本运算的计算器.按照教科书<数据结构(C语言版)>(严蔚敏等)5.3.2节中描述的方法,以十字链表表示稀疏矩阵. 一.需求分析 稀疏矩阵是指那些 ...

  9. 图解Java常用数据结构(一)

    点击上方"程序员大咖",选择"置顶公众号" 关键时刻,第一时间送达! 先不说楚枫的这般年纪,能够踏入元武一重说明了什么,最主要的是,楚枫在刚刚踏入核心地带时,明 ...

最新文章

  1. 初识C语言---(4)
  2. 灰度图像归一化到0~255(对比度拉伸)的OpenCV代码实现
  3. 模块的封装之C语言类的继承和派生
  4. 选什么专业?找什么样的工作?教你四个维度
  5. security center启动类型更改不了_Word 启动缓慢解决方法
  6. (转)为什么用ls和du显示出来的文件大小有差别?
  7. 处理tiff格式dem数据的方法——输出xyz坐标
  8. 页面加载过程中触发的事件
  9. Windows CE 5.0 五笔输入法
  10. 最小生成树MST详解
  11. 关于Spring Bean的生命周期
  12. 学习Git第三课 Git本地仓库初始化
  13. springboot publish event 事件机制demo
  14. 【译文】四十二种谬误(二)
  15. 云脉文档管理小程序轻松解决文档管理难题
  16. 数据结构---列表[pf]
  17. 小米商城登录,注册功能的实现!
  18. Elasticsearch:Ingest Pipeline 实践
  19. echart水滴_用echarts实现水滴图效果
  20. 固态电容和电解电容性能比较

热门文章

  1. 小念头最高境界/梁 挺
  2. 速卖通店铺“潜力爆品的运营策略”有哪些?
  3. 《跨境电商——速卖通搜索排名规则解析与SEO技术》一一1.3 从购买过程看速卖通的搜索排序机制...
  4. 笔趣阁“宇宙”背后,用户与平台的负向循环
  5. 卸载 Linux 双引导系统的方法
  6. Qt-消息对话框的设计
  7. 雨林木风 Ghost Win7 SP1 装机版 2013.04
  8. 关于虚拟机繁忙,关不掉的解决方法,无法用任务管理器关闭的解决方法
  9. 如何实现触摸屏与多台PLC之间无线Profinet通信?
  10. 如何转载别人的文章(请标明出处)