最近很忙, 随缘更新.
数据结构完全是一门理论的, 抽象的, 而且完全脱离实际的一门课程((, 因此本节内容放在了学习而非开发分类下.
今天学习KMP算法彻底被气到了(甚至上课时候直接把书撕了), 数据结构这门课程玷污了优雅且伟大的KMP算法.
所以内容完全没想去理解, 本节主要分享下next和nextval数组的求法, 仅提供方法, 无任何原理讲解.
最近很忙, 随缘更新.
数据结构完全是一门理论的, 抽象的, 而且完全脱离实际的一门课程((, 因此本节内容放在了学习而非开发分类下.
今天学习KMP算法彻底被气到了(甚至上课时候直接把书撕了), 数据结构这门课程玷污了优雅且伟大的KMP算法.
所以内容完全没想去理解, 本节主要分享下next和nextval数组的求法, 仅提供方法, 无任何原理讲解.
又咕咕好长时间了, 这次有朋友初学py, 被递归难住(尤其是汉诺塔问题), 因此写了一篇博客, 简单讲解下递归算法的算法核心.
在讲解之前, 要先说明一个最大的误区: 算法是解决问题的方法, 思路, 流程, 不过是体现在代码里, 当然你可以以任何方式体现它, 包括数学.
但注意的是, 算法不是数学的概念, 数学需要算法, 而非算法拘泥于数学.
因此, 很多人理解递归出现问题, 大部分就在这里. 使用数学语言解释是简洁明了的, 但这不代表它和数学有关系, 更不代表它依赖于数学.
很长一段时间没有写过blog了, 这次更新一篇文章.
这段时间中我接触了各种前端框架, 实现方式等. 前端各种各样的工具, 每一个都让人耳目一新, 却又达不到一个最佳实践的情况.
前端框架层出不穷, 说明了前端人对优化开发的急切需求, 也反映出到现在为止, 没有任何一个框架能使所有人高潮, 没有任何一个框架能做到垄断.
我们前端有和PyPI一样开放的社区, 又有和Go一样强大的核心力量. 开放性使每个人都有能力实现自己优化的想法, 强大的核心又为实现目标提供了超多的可能. 在这些已有的可能中, 又有无数的新的可能在孕育, 等待着唯一的"不可能"的出现.
上一次写blog居然已经是两个月前了
这里无需讲解, 代码如下:
void selectionSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
int min_idx = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[min_idx])
min_idx = j;
}
int temp = arr[i];
arr[i] = arr[min_idx];
arr[min_idx] = temp;
}
}
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// 交换 arr[j] 和 arr[j+1]
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
虽然一直对指针这个概念有所耳闻, 但这次才开始深入了解指针.
指针是一个特殊的变量, 它存储的是一个内存中的位置, 类型代表其位置的大小.
int a;
int *pa;
最近, 学院打算部署一个DeepSeek用于2025级招生问答工作, 苏喵觉得学院方案并不可行, 所以, 我编写了一个基于DeepSeek API和本地数据库的程序Kirafint.
该程序使用nodejs编写, 过程中咱也学到了很多东西, 这里一一分享一下.
C语言的语句也可以有返回值, 例如:
int a = 1;
if (a = 0) {
// 不会执行
}
if (a = -1) {
// 会执行
}
上个世纪70年代, 波士顿地区房价波动较大, 这对房地产市场参与者是个重大的挑战. 为了解决这个问题, 研究人员使用机器学习算法来预测房价.
本人是人工智能专业学生, 第一次接触到机器学习便是这个算法(例题). 花费了大概两天时间, 完成了老师布置的波士顿房价预测的问题.
但是, 使用诸如numpy, panda, paddle等库完全不能理解线性回归, 梯度下降的逻辑和思想.
因此, 我使用纯py原生库编写了波士顿房价预测的机器学习代码(但是使用了plt库用于绘图), 下面分享一下.