Articles
28
Tags
55
Categories
25
Home
Archives
Tags
Categories
About
Alex's Warm Home
求解最长上升子序列
Home
Archives
Tags
Categories
About
求解最长上升子序列
Created
2022-03-10
|
Updated
2025-05-12
|
IT
Algorithm
|
Word Count:
17k
|
Reading Time:
55 mins.mins
|
Post Views:
Input password Here.
Author:
Alex Hu
Link:
https://www.alexhu.one/IT/Algorithm/求解最长上升子序列_2022_03-10_14_29_02/
Copyright Notice:
All articles on this blog are licensed under
CC BY-NC-SA 4.0
unless otherwise stated.
sequence
dp
greedy algorithm
binary search
Previous
为什么 C 和 C++ 中要引入头文件?
起源:为什么要有头文件 头文件在 1970 年原始的 C 中并不存在。代码的复用靠的是编译后的链接过程. 这也是当时语言的主流选择. 如此的一个最重要的原因是当时的程序设计哲学讲求二进制复用以兼容不同高级语言的编译产物. 因此,C 程序里可能存在对其它语言函数的调用。比起其它 C 程序, 这些函数对于 C 编译器来说更是一头糨糊. 编译的时候碰到这些函数只会识别为外部符号等待链接。既然如此, 没有任何必要为 C 程序单独处理,这也符合 C 语言尽可能简单易实现的哲学. 如此,函数声明也是不必要的. 事实上,现代的 C 程序依然保持这这种兼容性. 例如以下代码完全可以通过编译. int main(){ puts("Hello");} 这里的 puts 就需要连接 stdio.h 才能正常调用. 那么一个很重要的问题就是,各个编程语言的数据类型风马牛不相及, 链接的时候怎么保证参数和返回值类型检查呢? 在当时根本不需要考虑这个问题。因为 当时的语言基本上都只有字长一种数据类型. 没错,C 语言的类型系统是后加的。因此为了兼容性,C 语言是弱类型的. 这类编程语言的函数调用...
Next
C++ 静态变量的使用
C/C++ 提供 static 关键字修饰变量, 而这个关键字在不同场合下的用法是在是千奇百怪,因此我决定做一个总结. C 语言中的 static 首先,当 C 语言引入这个关键字的时候,它的意思可以概括为: 将被修饰的变量放到程序文件的数据段中. 因此, 它有如下特性: 修饰的变量的作用域最大为本文件. 修饰的变量的生命周期为程序运行期间, 因此可以在一个函数内定义一个静态变量而在外部引用它. 修饰的变量只初始化一次. 也因此,它有如下限制: 修饰的变量必须用常量表达式初始化. 修饰的变量不能出现在结构体内, 除非结构体也是静态的.(因为一个结构体只能使用一块连续的内存) C++ 中的 static C++ 继承了 C 语言的 static 用法,但是为了一时图方便, 就像承认 const 的常量性那样,允许静态变量用变量表达式初始化. 除此之外,C++ 引入了类,顺便用 static...
Comments
Gitalk
Valine
Alex Hu
这里是Alex Hu用来记录生活的温馨小窝, 希望他能在这里感到平静与幸福.
Articles
28
Tags
55
Categories
25
Follow Me
Announcement
暂时还没有什么要写的
Contents
1.
使用动态规划和贪心两种算法
1.1.
动态规划
1.2.
贪心
Recent Posts
让 Seagate 等厂商的移动硬盘在 Linux 下正确输出 SMART 信息。
2025-05-12
树状数组
2025-05-12
Install and Configure KVM in ArchLinux
2025-05-12
词语翻译问题
2025-05-12
线段树详解
2025-05-12
簡