自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 收藏
  • 关注

原创 【动态规划——最长公共子串】

动态规划——最长公共子串。

2023-09-06 13:44:07 92

原创 C语言模拟最简单的计算机

如下面的伪代码所示,计算机运行程序的过程为取指令–>运行指令–>更新PC的值。从PC指示的存储器位置取出指令;执行指令;更新PC;

2023-09-03 16:48:00 1583

原创 verilator——牛刀小试

build verilator自动进行make。–cc 将.v文件翻译成c++–exe 创建可执行文件。–trace 记录波形。

2023-09-03 14:13:40 244

原创 ubuntu22.04搭建verilator仿真环境

操作系统为 Ubuntu(22.04.2 LTS),本次安装verilator开源verilog仿真工具,进行RTL功能仿真。下面构建版本为5.008的verilator仿真环境。

2023-09-03 13:05:48 1497

原创 数据在内存分布——大小端

大小端(Endianness)是一种描述数据在内存中存储方式的概念。它涉及到多字节数据类型(如整数、浮点数)在内存中的字节顺序排列。大端存储(Big Endian):在大端存储中,较高有效字节(Most Significant Byte,MSB)存储在较低的内存地址,而较低有效字节(Least Significant Byte,LSB)存储在较高的内存地址上。

2023-09-03 11:26:31 345

原创 【手写实现自旋锁SpinLock】

自旋锁(Spinlock)是一种基本的同步机制,用于保护共享资源的并发访问。它的工作原理是,当一个线程尝试获取自旋锁时,如果锁已经被其他线程持有,则该线程会一直自旋(忙等待)直到锁被释放。

2023-09-02 13:30:34 177

原创 【高效数据结构——位图bitmap】

位图(Bitmap)是一种用于表示和操作位(bit)的数据结构。它是由一系列二进制位(0 或 1)组成的序列,每个位都可以单独访问和操作。位图常用于以下情况:压缩存储:位图可以有效地存储大量的布尔值信息,每个位只占用一个比特,因此可以大幅减少存储空间的占用。例如,当需要存储大量的开关状态、标志位或者布尔型数据时,使用位图可以节省内存。快速查找和查询:由于位图的特殊存储结构,它可以快速进行位的查找和查询。例如,可以用位图表示一组元素的存在与否,然后通过位运算来快速进行成员的查找、去重、交集、并集等操作。

2023-09-01 20:05:30 956 1

原创 手写RPC——数据序列化工具protobuf

Protocol Buffers(protobuf)是一种用于结构化数据序列化的开源库和协议。下面是 protobuf 的一些优点和缺点:优点:高效的序列化和反序列化:protobuf 使用二进制编码,相比于文本格式(如 JSON 或 XML),具有更高的序列化和反序列化性能。它使用紧凑的二进制格式,节省了存储空间和网络带宽。小巧的消息体积:protobuf的编码格式非常紧凑,消息体积较小。这对于需要在网络上传输大量数据或存储大量数据的场景非常有利,减少了存储和传输的成本。

2023-08-30 20:34:09 851

原创 目标检测——可视化拟合真实框

如下图所示,绿色框为真实框,蓝色框为预测框。这里采用MSE loss去不断更新预测框的参数从而不断逼近真实框。

2023-05-08 12:37:08 168

原创 浅看C语言的__attribute__关键字

GNU C编译器增加了一个__attribute__ 关键字用来声明一个函数、变量或类型的特殊属性。申明这些属性主要用途就是指导编译程序进行特定方面的优化或代码检查。

2023-05-07 17:17:57 73

原创 openharmony内核中不一样的双向链表

从上面的结果可以看出,使用LOS_DL_LIST_ENTRY也是可以获得内容结构体的首地址。最近看openharmony的内核源码时看到一个有意思的双向链表,结构如下。其实LOS_DL_LIST不能单独拿来用,他需要放置于内容结构体上,如下图。现在有个任务,给你一个LOS_DL_LIST,如何获得内容结构体的首地址?具体如何做,我们看看下面的两个宏,并结合实际的例子来进行分析。不知道大家看上面的结构体有没有发现诡异的地方?没错,这个双向链表咋没有数据呢?直接看我写的demo吧。

2023-04-24 00:27:15 248

原创 目标检测基础之IOU计算

IOU 交并比(Intersection over Union),从字面上很容易理解:计算交集在并集的比重。从网上截张图看看IOUA∩BA∪BIOUA∪BA∩B​。

2023-04-16 00:25:48 244

原创 gn和ninja 编译学习

参见此仓库 https://gitee.com/linyongwei/gn_learning。

2022-08-19 18:09:58 200

原创 c语言取结构体的偏移量

c语言取结构体的偏移量

2022-02-09 12:43:11 867

原创 SQL中join的学习

这里写目录标题SQL中join的学习1. 概述2.使用2.1 inner join2.2 left join2.3 right joinSQL中join的学习1. 概述在多表查询中,我们经常会使用到join.join按功能分有三种:inner join(内连接,或等值连接):获取两个表中字段匹配关系的记录;left join(左连接):获取左表中的所有记录,即使在右表没有对应匹配的记录right join(右连接):获取右表中的所有记录,即使在左表没有对应匹配的记录2.使用现在有两个表

2020-12-15 20:27:29 80

原创 合并两个有序链表

合并两个有序链表将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的输入:1->2->4, 1->3->4输出:1->1->2->3->4->4方法1——递归我们直接将以上递归过程建模,同时需要考虑边界情况。如果 l1 或者 l2 一开始就是空链表 ,那么没有任何操作需要合并,所以我们只需要返回非空链表。否则,我们要判断 l1 和 l2 哪一个链表的头节点的值更小,然后递归地决定下一个添加到结果里的节

2020-12-15 13:22:31 116

原创 动态规划之(dp)——minimum-path-sum

题目描述给定一个由非负整数填充的m x n的二维数组,现在要从二维数组的左上角走到右下角,请找出路径上的所有数字之和最小的路径。注意:你每次只能向下或向右移动。Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the su...

2020-03-29 12:50:53 151

原创 用docker运行一个nginx镜像访问图片遇到的坑

拉取镜像docker pull nginx查看镜像sudo docker images运行nginx实例sudo docker run -d -p 8099:80 --name nginx-yoyo -v /home/ftp/test:/usr/share/nginx/html nginx 测试访问html页面可以但是访问jpg文件不可以进入nginx容器查看...

2020-03-27 23:33:04 817

原创 基于全注解的AOP配置

/**业务层接口*/package mu.lin.hu.service;public interface IAcountService { void saveAccount(); void updateAccount(int i); int deleteAccount();}/**业务层实现类*/package mu.lin.hu.service.impl...

2020-03-20 10:05:34 154

原创 基于XML的AOP配置--学习笔记

基于一个简单的案例在业务层方法调用之前先调用日志类的方法先引入依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2020-03-19 23:20:35 119

原创 用hadoop计算pi

安装hadoop集群后执行hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar pi 10 10000[hadoop@Master hadoop]$ hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar pi...

2020-03-18 17:11:37 1148

原创 基于注解的IOC配置

用于创建对象的它们的作用就和在xml配置文件中编写一个<bean>标签实现的功能一样 @Component 作用:用把当前类对象存入spring容器 属性: value:用于指定bean的id。不写时,它的默认值为当前类目且首字母小写 @Controller,一般用于表现层 @Service,一般用于业务层 @Reposit...

2020-03-18 10:21:29 92

原创 学习dbutils

概述传统操作数据库的类指的是JDBC(java database connectivity:java数据库连接,java的数据库操作的基础API)Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能。DBUtils是java编程中的数据库操作实用工具,小巧简单实用,1.对于数据表的读操...

2020-03-18 09:08:56 131

原创 jdk的动态代理

概述动态代理和静态代理的思路基本是一致的,不过动态代理功能更加强大。/** 动态代理 特点:字节码随用随创建,随用随加载 作用:不修改源码的基础上对方法增强 分类: 基于接口的动态代理 基于子类的动态代理 基于接口的动态代理: 涉及的类 Proxy 提供者:JDK官方 ...

2020-03-16 16:31:09 76

原创 静态代理

概念代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象。代理模式用于解决两种问题:1. 控制对基础对象的访问2. 在访问时增加额外的功能静态代理要求被代理类和代理类同时实现相应的一套接口;通过代理类的对象调用重写接口的方法时,实际上执行的是被代理类同样的方法的调用。代码package com.mulinhu.staticproxy;...

2020-03-16 16:12:53 74

原创 装饰者模式

#装饰者模式的概念装饰模式指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。特点(1) 装饰对象和真实对象有相同的接口。这样客户端对象就能以和真实对象相同的方式和装饰对象交互。(2) 装饰对象包含一个真实对象的引用(reference)(3) 装饰对象接受所有来自客户端的请求。它把这些请求转发给真实的对象。(...

2020-03-16 15:55:52 67

原创 操作系统的基本概念

操作系统的概念计算机系统自下而上可以粗分为4个部分:硬件、操作系统、应用程序和用户(这里的划分和计算机组成原理的分层不同)操作系统管理各种计算机硬件,为应用程序提供基础,并充当计算机硬件与用户之间的中介硬件,如中央处理器、内存、输入\输出设备等,提供了基本的计算资源应用程序,如字处理程序、电子制表软件、编译器、网络浏览器等,规定了按何种方式使用这些资源来解决用户的计算问题操作系统控制和...

2020-03-14 10:55:43 72

原创 spring支持三种方式创建Bean

spring支持三种方式创建Bean 1.调用构造器创建Bean 2.调用静态工厂方法创建Bean 3.调用实例工厂方法创建Bean调用构造器创建Bean<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" x...

2020-03-13 16:21:09 97

原创 spring的ApplicationContext 的三个常用实现类

ClassPathXmlApplicationContext: 可以加载类路径下的配置文件,要求配置文件必须在类路径下。不在的话,加载不了 AnnotationConfigApplicationContext 可以加载磁盘任意路径下的配置文件(必须有访问权限)FileSystemXmlApplicationContext 用于读取注解创建容器。...

2020-03-13 15:58:04 516 2

原创 基于xml的IOC环境搭建

##引入spring的maven依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schema...

2020-03-13 15:46:19 80

原创 用工厂模式简单实现spring的IOC容器

创建一个TestBeanpackage domain;public class TestBean { private String name; public TestBean(){ } public TestBean(String name) { this.name = name; } public String getNa...

2020-03-13 15:33:33 358

原创 C++的模板

模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。函数模板的定义template <class type> ret-type func-name(parameter list){ // 函数的主体}在这里,type 是函数所使用的数...

2020-01-17 15:17:34 89

原创 结构体构造函数使用总结

三种结构体初始化方法 1.利用结构体自带的默认构造函数 2.利用带参数的构造函数 3.利用默认无参的构造函数 在建立结构体数组时,如果只写了带参数的构造函数将会出现数组无法初始化的错误!!! 结构体是否有构造函数和析构函数,C里面没有,C++里面有。 C++里根本就没有结构,仅仅为了兼容c才有结构这种东西,实际上除了名字以外,C++的结...

2020-01-17 12:32:46 3320

原创 Apriori算法的学习

最近学习了Apriori算法,自己用Java参考着书上的C++代码跟着写了一遍谢谢SCAU的老师的授课讲解~*~以下是源码:package 数据挖掘;import java.util.*;public class Apriori { //事务数目 private int item_size; //最小阈值 private int min_valu...

2019-10-22 11:41:06 187

原创 二叉树遍历

前序遍历 根->左子树->右子树中序遍历 左子树->根->右子树后序遍历 左子树->右子树->根 层次遍历 只要按层遍历即可import java.util.LinkedList;import java.util.Queue;import java.util.Stack;public class TreeNode { I...

2019-10-07 13:20:02 105

原创 a^b

题目描述输入描述:三个用空格隔开的整数a,b和p。输出描述:一个整数,表示a^b mod p的值。示例1输入2 3 9输出8解题思路:主要用到快速幂的知识。import java.util.Scanner;public class Main { public static void main(String[] args) ...

2019-10-06 15:41:47 134

原创 leetCode--linked-list-cycle-ii

题目描述对于一个给定的链表,返回环的入口节点,如果没有环,返回null拓展:你能给出不利用额外空间的解法么?Given a linked list, return the node where the cycle begins. If there is no cycle, returnnull.Follow up:Can you solve it without us...

2019-10-06 12:54:28 121

原创 leetCode--linked-list-cycle

题目描述判断给定的链表中是否有环扩展:你能给出不利用额外空间的解法么?Given a linked list, determine if it has a cycle in it.Follow up:Can you solve it without using extra space?解题思路:利用快慢指针的性质,快慢指针相遇说明单链表中存在环 clas...

2019-10-06 12:44:40 121

原创 leetCode--reorder-list

题目描述将给定的单链表L:L0→L1→…→Ln-1→Ln,重新排序为:L0→Ln→L1→Ln-1→L2→Ln-2→…要求使用原地算法,并且不改变节点的值例如:对于给定的单链表{1,2,3,4},将其重新排序为{1,4,2,3}.Given a singly linked listL:L0→L1→…→Ln-1→Ln,reorde...

2019-10-06 12:39:40 99

原创 leetCode--sort-list

题目描述在O(n log n)的时间内使用常数级空间复杂度对链表进行排序。Sort a linked list inO(nlogn) time using constant space complexity.学习链表的文章 class ListNode { int val; ListNode next; ListNode(int x)...

2019-10-04 17:59:54 67

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除