avatar
文章
87
标签
0
分类
12
归档
分类
照片
关于
搜索
CodeTalks
搜索
归档
分类
照片
关于
搜索

CodeTalks

C++ 模板笔记
发表于2018-11-27|编程分享
这篇博客记录一下学习 C++ 模板中遇到的一些知识,参考书籍是 C++ Templates: The Complete Guide (2nd Edition),本文所用的编译器版本: 123> g++ --versiong++ (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0Copyright (C) 2017 Free Software Foundation, Inc. typename 的意义在模板声明中,typename 和 class 没有任何区别,但是在一个模板类里,如果要声明一个模板类中的一个类型的变量,例如 vector<T>::...
Python 生命游戏(生成器的应用)
发表于2018-11-25|编程分享
生命游戏康威生命游戏(英语:Conway’s Game of Life),又称康威生命棋,是英国数学家约翰·何顿·康威在1970年发明的细胞自动机。 生命游戏 生命游戏中,对于任意细胞,规则如下: 每个细胞有两种状态 - 存活或死亡,每个细胞与以自身为中心的周围八格细胞产生互动。 当前细胞为存活状态时,当周围的存活细胞低于2个时(不包含2个), 该细胞变成死亡状态。(模拟生命数量稀少) 当前细胞为存活状态时,当周围有2个或3个存活细胞时, 该细胞保持原样。 当前细胞为存活状态时,当周围有3个以上的存活细胞时,该细胞变成死亡状态。(模拟生命数量过多) 当前细胞为死亡状态时,当周围有3个...
2018 中山大学软件工程初级实训 - Agenda
发表于2018-11-17|项目分享
本项目是 2018 年中山大学软件工程初级实训课程内容。项目为编写一个简单的会议管理系统,需要在完成用户添加、删除,会议添加、删除、修改等功能,主要目的是让学生了解软件工程设计的思想(例如三层模型)以及锻炼实际编码能力(主要为 C++11,运用 Lambda 表达式和 STL)。代码通过教师编写的 gtest 测试用例进行测试,每周六定时评测三次。本人在实现了基本要求之外,还实现了 C++/Python 接口,使用 Django 构建后端 RESTFul API,并使用 React 和 MaterialUI 构建前端页面。 完整代码参考:https://github.com/h...
FlapPGA Mario - 用 FPGA 编写游戏
发表于2018-11-16|项目分享
完整代码参考:https://github.com/howardlau1999/flapga-mario 构想蓝图在学习数字电路课程的时候,教授向我们提出了自愿完成一个 FPGA 项目的要求,还展示了往年学生的成果。可是大部分人选择完成的是多周期 MIPS CPU 的设计,有点无趣,其中有一个让我印象深刻,那就是有人用 FPGA 实现了一个类似打砖块的游戏,当时我就觉得这太酷了,所以我也选择了用 FPGA 做一个游戏。但是当时的我对 FPGA 一无所知,连 Verilog 的语法都不清楚,原本的构想是在 FPGA 上实现一台 FC,但是很快我就发现这不现实,所以我给自己定的目标是,不用 ...
Python 中互相切换流式和数组式存取
发表于2018-11-15|编程分享
在 Python 中,存取文件的一般操作是像下面这样的: 12345with open("foobar.txt", "rb+") as f: data = f.read(42) data[0:5] = b'bytes' f.seek(-42, 1) f.write(data) 对于文件操作,我们需要通过 read()、write()、seek() 等函数来进行流式存取。某些情况下,这种操作显得非常不便,比如说我们想修改文件中某些字节,则需要先读取出来到 bytes 中,做完修改之后 seek() 回到原...
二维离散卷积转换为矩阵相乘——卷积与反卷积
发表于2018-11-15|机器学习
假设我们需要将矩阵 $$ \mathbf{X} = \begin{bmatrix} x_1 & x_2 & x_3 \\ x_4 & x_5 & x_6 \\ x_7 & x_8 & x_9 \end{bmatrix} $$ 以 $$ \mathbf{H}=\begin{bmatrix} h_1 & h_2 \\ h_3 & h_4 \end{bmatrix} $$ 为卷积核做卷积操作,普通操作是用卷积核在矩阵上进行滚动相乘相加,但是这样不利于 GPU 等硬件加速运算,一般而言,矩阵的卷积会先转换为稀疏矩...
将 C++ 程序编译成 Python 模块
发表于2018-10-23|编程分享
有些时候我们需要将已有的 C/C++ 程序编译成 Python 模块方便调用,其实 Python 提供了简便的支持。主要分为以下几步: 在 C/C++ 中编写 Python 方法为了举例方便,假设我们要写一个简单的加法模块。要开始在 C/C++ 程序中编写 Python 方法,首先要包含 Python.h 这个头文件。然后根据需要声明函数,函数的形式非常统一,返回值和参数都是 PyObject* 类型,具体实现方法可以参考下面的代码: 1234567891011121314#include <Python.h>static PyObject* a...
DeeCamp 日记 | 开营
发表于2018-07-23|DeeCamp 2018
五月底看到 DeeCamp 相关通知,怀着试一试的心态发了一封极其简陋的简历报名,六月初参加笔试面试,到六月底幸运地收到了录取通知书,七月中考完期末考急急忙忙地赶到机场,经历了飞机返航等各种惊心动魄的意外之后,终于一路舟车劳顿来到了首都北京,在北京吃喝玩乐了三四天之后,终于等到了期待已久的 DeeCamp 的正式开营。 DeeCamp 模仿了 FooCamp 等一群极客工程师们自发组织的会议形式。这种会议并没有传统会议一般有着固定议程和主持人,全部是由与会者自发讨论决定主题,决定会议的进程。而 DeeCamp 在第一周会邀请产业第一线的大佬们来进行知识授课,在随后的三周半时间里,则由参加...
LeetCode | 115 不同的子序列
发表于2018-04-28|编程分享LeetCode
题目地址:https://leetcode-cn.com/problems/distinct-subsequences/description/ 给定一个字符串 S 和一个字符串 T,计算在 S 的子序列中 T 出现的个数。 一个字符串的一个子序列是指,通过删除一些(也可以不删除)字符且不干扰剩余字符相对位置所组成的新字符串。(例如,"ACE" 是 "ABCDE" 的一个子序列,而 "AEC" 不是) 比如:S = "rabbbit", T = "rabbit",则输出 3。 思路一最简单...
LeetCode | 174 地下城游戏
发表于2018-04-23|编程分享LeetCode
题目地址:https://leetcode-cn.com/problems/dungeon-game/description/ 初看这题的时候,觉得是动态规划,自然而然地想到从左上角开始递推,把起点固定在 (0, 0),用 min_hp[r][c] 表示终点在 r + 1 行 c + 1 列时,起点所需最小的 HP,但是问题在于,在这种情况下如果我知道 min_hp[r - 1][j] 和 min_hp[i][j - 1],其实是很难得到 min_hp[i][j] 的。举个例子: 1 (K) -3 3 0 -2 0 -3 -3 -3 (P) ...
1…6789
avatar
howardlau
记录想法
文章
87
标签
0
分类
12
GitHub
最新文章
DeepSeek 3FS 源码解读——客户端篇2025-03-16
DeepSeek 3FS 源码解读——RPC 篇2025-03-03
DeepSeek 3FS 源码解读——磁盘 IO 篇2025-03-02
DeepSeek 3FS 源码解读——协程&RDMA篇2025-03-01
分布式存储入门学习路线2025-01-17
分类
  • DeeCamp 20181
  • IT 杂谈2
  • Uncategorized1
  • 大学学习9
    • ucore8
  • 机器学习7
  • 游戏推荐2
  • 科普3
归档
  • 2025 年 03 月 4
  • 2025 年 01 月 1
  • 2023 年 09 月 1
  • 2023 年 08 月 1
  • 2022 年 08 月 3
  • 2022 年 07 月 1
  • 2022 年 05 月 7
  • 2022 年 03 月 1
网站信息
文章数目 :
87
最后更新时间 :
© 2017 - 2026 By howardlau
粤 ICP 备 17129444 号-1
搜索
数据加载中