wizlyk

wizlyk的代码小天地

0%

Above all shadows rides the Sun

and Stars for ever dwell:

I will not say the Day is done,

nor bid the Stars farewell

J·R·R·托尔金,《魔戒:王者归来》

正如被晨曦拉长的幢幢高楼,正如夏日微风中的斑驳树影,是阴影让光变得更加跳脱、丰富。本文简述了在虚拟场景中模拟出真实世界的阴影效果的实时渲染方法——阴影映射(Shadow mapping)的基本原理和其相关算法,同时介绍了阴影映射算法存在的问题以及软阴影现象,希望能帮助大家对阴影映射有一个大概的认识。

阅读全文 »

最近在在整理以前的资料的时候,发现了曾经在学邓俊辉老师的《数据结构》的时候尝试归纳的思维导图。
而二叉搜索树的思维导图是上学时出海,在大洋上漂着的时候做的。现在想想还是觉得神奇。

阅读全文 »

T&& Doesn’t Always Mean “Rvalue Reference” -Scott Meyers

https://isocpp.org/blog/2012/11/universal-references-in-c11-scott-meyers

有时间我再做一个翻译和理解。

==============================
2022-11-29: 找回博客才发现这个坑,就先放这里吧。

Item 7: 辨别生成对象时()和{}的不同
Item 8: 多用 nullptr 代替 0 和 null
Item 9: 多用 alias declarations 而不是 typedefs
Item 10: 多用 scoped enums 而不是 unscoped enums
Item 11: 使用 deleted 函数而不是 private undefined 函数
Item 12: 将重写的函数声明为 override

阅读全文 »

约瑟夫问题(有时也称为约瑟夫斯置换),是一个出现在计算机科学数学中的问题。在计算机编程的算法中,类似问题又称为约瑟夫环

人们站在一个等待被处决的圈子里。 计数从圆圈中的指定点开始,并沿指定方向围绕圆圈进行。 在跳过指定数量的人之后,执行下一个人。 对剩下的人重复该过程,从下一个人开始,朝同一方向跳过相同数量的人,直到只剩下一个人,并被释放。

问题即,给定人数、起点、方向和要跳过的数字,选择初始圆圈中的位置以避免被处决。

阅读全文 »

Knapsack Problem 就是大名鼎鼎的“背包问题”,其中又以“01背包”为大家所熟知。这里记录一下在AcWing上学习的一些背包问题相关的解法。

阅读全文 »

Jacobian

发现一个以前没注意的问题,Jacobian行列式之所以要求取绝对值,是因为不同的坐标顺序会导致不同的行列式值(如下图),而我们通常希望得到一个正的数,所以要取绝对值。

不同的坐标顺序去表换到相同的坐标系 https://math.stackexchange.com/questions/1144214/on-the-jacobian-determinant-for-conversion-to-cylindrical-coordinates