图源:吟游诗人-狼娘 月巴小鹅 111776313
简述
广义表是线性表的一种推广。线性表要求表中元素拥有统一的类型,而广义表无此限制。需要注意的是,广义表和线性表长度一般认为是有限的,但广义表的深度可以是无限的(即递归表)。
广义表是一种数据结构。对广义表的常见操作包括:
- 创建
- 从字符串形式创建
- 销毁
- 复制
- 取表头
- 取表尾
- 判空
- 求长度
- 求深度
- 从表头插入
- 从表头删除
- 遍历
广义表是Lisp语言的基本数据结构。后文以Common Lisp和C++给出各基本操作的示例。
图源:吟游诗人-狼娘 月巴小鹅 111776313
广义表是线性表的一种推广。线性表要求表中元素拥有统一的类型,而广义表无此限制。需要注意的是,广义表和线性表长度一般认为是有限的,但广义表的深度可以是无限的(即递归表)。
广义表是一种数据结构。对广义表的常见操作包括:
广义表是Lisp语言的基本数据结构。后文以Common Lisp和C++给出各基本操作的示例。
图源:Magnet - Matcha_ 102235547
本系列笔记为结合了个人理解的非初学者向笔记,包括《CMU 15-462》、《Games 101:现代计算机图形学入门》、《Games 102:几何建模与处理》、《Introduction to 3D Game Programming with DirectX 12》等数个知识来源。
计算机图形学:利用计算机合成视觉信息或利用计算机合成/操控感官信息的学科。
Algorithms and Data Structures – Generalized Lists
Image source: 八重神子的花嫁 月巴小鹅 126756408
A generalized list is an extension of a linear list. While a linear list requires all elements to be of the same type, a generalized list has no such restriction. It’s important to note that both generalized lists and linear lists are generally considered to have finite lengths, but the depth of a generalized list can be infinite (i.e., a recursive list).
A generalized list is a type of data structure. Common operations on generalized lists include:
Generalized lists are the fundamental data structure in Lisp. Examples of each basic operation are provided in Common Lisp and C++ in the following sections.
Computer Graphics (1) - Perceptual Understanding
Image Source: Eden - Hiten 131135880
This series of notes is a non-beginner-oriented compilation that combines personal understanding, drawing from multiple knowledge sources including CMU 15-462, Games 101: Introduction to Modern Computer Graphics, Games 102: Geometric Modeling and Processing, and Introduction to 3D Game Programming with DirectX 12.
Computer Graphics: The discipline of using computers to synthesize visual information or to synthesize/manipulate sensory information.
图源:Anmi - 水族館 83088427
虽然没有固定标准,但一般将C99之后的C语言标准称为“现代C语言”;目前的最新标准为C23;
以下是一部分我认为比较重要的变化,完整变化列表可以参阅 https://en.cppreference.com/w/c/23 或ISO标准文档。
<assert.h>
中的static_assert()
宏被替代,变成了static_assert
关键字;<threads.h>
中的thread_local()
宏被替代,变成了thread_local
关键字;<time.h>
中的ctime()
函数弃用,请使用ctime_s()
替代;<time.h>
中的asctime()
函数弃用,请使用asctime_s()
替代;<stdnoreturn.h>
与_Noreturn
标识符均弃用;<stdalign.h>
中的alignas()
和alignof()
宏被弃用,请直接使用_Alignas
和_Alignof
关键字;Update your browser to view this website correctly.&npsb;Update my browser now