2020 12-01

推荐系统实践 0x09 基于图的模型

用户行为数据的二分图表示 用户的购买行为很容易可以用二分图(二部图)来表示。并且利用图的算法进行推荐。基于邻域的模型也可以成为基于图的模型,因为基于邻域的模型都是基于图的模型的简单情况。我们可以用二元组\((u,i)\)来表示用户\(u\)对物品\(i\)有过购买行为,这样的话数据集可以用一个二分图来表示。我这里尝试画一个二分图(有点丑,不要介意哈): graphLRA(A)-->a[a]A(A)-->b[b]A(A)-->d[d]B(B)-->b[b]B(B)--&g

2020 12-01

算法系列-动态规划(1):初识动态规划

昨天,罗拉去面试回来,垂头丧气。显然是面试不顺利,我赶忙过去安慰。 经过询问才知道,罗拉面试挂在了动态规划。 说到动态规划,八哥可就来精神了,于是就结合劳拉的面试题简单的和她介绍了动态规划。 事情是这样的,劳拉的面试官给了她一道题,题目如下: 有一个数列,规律如下:1、1、2、3、5、8、13.... 如果要求第N个数值,用代码如何实现。 罗拉一看这题,心里一喜,“这题目,不简单吗?”。 于是和面试官卖弄道:“这不是斐波那契数列吗?这个数列从第3项开始,每一项都等于前两项之和”。 面试官笑笑,

2020 12-01

设计模式(06)——设计原则(1)

设计原则 设计原则,是设计模式的内功心法,基本所有的设计模式都是基于设计原则进行的具体化,如果说设计模式是如何操作的话,那么设计原则就是为何这么做的基石,因此,只要我们能充分理解设计原则,那么在此基础上,对设计模式就能更好的理解,甚至能自己设计出一种设计模式来。 单一职责原则 定义 一个类或模块,只需要完成一个范围的功能,而不要搞得大而全。 场景 例如我们设计一个社交网站,现在要存储用户信息,类设计如下: publicclassUserInfo{ privateStringname; pr

2020 12-01

手撕HashMap

前言:    平时工作的时候,用的最多的就是ArrayList和HashMap了,今天看了遍HashMap的源码,决定自己手写一遍HashMap。   一、创建MyHashMap接口     我们首先创建一个MyHashMap的入口,暴露一个外部调用的接口,里面简单的定义一下put和get。 publicinterfaceMyHashMap<K,V>{ publicVput(Kk,Vv); publi

2020 12-01

5、pgpool-II高可用性(一)数据库的高可用性

官网示例 一、实现原理 使用pgpool-II软件;我们常用来实现流复制的高可用性;备库只读的,不可写;就是当主库出现问题时;需要把备库自动激活为主库;来接管服务。 这在其他高可用软件也有这功能,而pgpool-II在配置文件pgpool.conf中提供配置项failover_command。让用户配置一个脚本,当发生故障切换时,执行该脚本。 二、示例演练 本示例采用PostgreSQL12+pgpool-II4。 演练目的: 搭建pgpool集群 测试数据库的高可用性 修复primary节点

2020 12-01

数论之卡特兰数

1、基本模型 有一个长度为\(2n\)的\(01\)序列,其中\(1,0\)各\(n\)个,要求对于任意的整数$k\in[1,2n]$,数列的前\(k\)个数中,\(1\)的个数不少于\(0\) 满足条件的序列的数量为 \[Cat_n=\frac{C_{2n}^n}{n+1}\] 另一种形式 \[Cat_n=C_{2n}^n-C_{cn}^{n-1}\] 又一种形式 \[Cat(n)=\frac{1}{n+1}\sum_{i=0}^n{C_n^i}^2\] 递推式 \

2020 12-01

抖音三联屏如何制作

抖音是我们目前使用的最广泛的一个软件了,而且现在随着全民短视频的开启,越来越多的人进入到了抖音,开始从抖音获利,比如一些做影视剪辑的人总会将一个电影分为三集来解说,这是一个好的封面的作用就体现出来了。 首先我们下载一个软件:抖影工厂(在华为上为影优尽优)我们可以通过这个软件来制作抖音三联屏。 第一步:打开抖影工厂 第二步:选择三宫格图 三,选择宫格工具 如果我们需要裁剪为多个宫格图片的话,我们选择—>宫格—>点击三宫格—>选择裁剪 四,保存到相册/制作视频/发布到抖音 接

2020 12-01

杂篇-之裸眼3D渲染相机及画面矫正

主题公园类,或大型广场led屏幕,直角幕,三维影片如何制作,和最终画面如何矫正还原。 前两天,一朋友做的项目,大概就是一个柱状的led屏幕,可能是立在广场街角等处,如果这样子,那个柱状体的有颜色的两面就是led屏幕,要做成裸眼3d效果。     那,要解决两个事儿,一个是渲染相机怎么打,二个就是最终画面得是什么样,才能拿到正常的播放器去播放。 一、渲染相机   渲染相机当然是要模拟人的视角,于是就在人的正常高度看向led屏幕,打一个渲染相机,渲染相机的透视和角度,要尽量涵盖

2020 12-01

Potato家族本地提权分析

原文来自SecIN社区—作者:Zeva 0x00前言 在实际渗透中,我们用到最多的就是Potato家族的提权。本文着重研究Potato家族的提权原理以及本地提权细节 0x01原理讲解 1.利用Potato提权的是前提是拥有SeImpersonatePrivilege或SeAssignPrimaryTokenPrivilege权限,以下用户拥有SeImpersonatePrivilege权限(而只有更高权限的账户比如SYSTEM才有SeAssignPrimaryTokenPrivilege权限):

2020 12-01

C++实现任意进制的相互转换

进制转换是计算机内部时时刻刻都在进行活动,本篇文章也是进制转换的算法介绍,不过不同的是我想利用ascll编码实现2到61之间任意进制的相互转换,更大进制的表示方法只不过是十六进制表示方法的延伸:用字母A到Z表示整数10到35,字母a到z表示整数36到61。这样就可以表示2到61之间的任意进制啦,为方便理解ascll表放在代码后面,可以自行查看。   下面直接给上代码: 1#include<iostream> 2#include<cstring> 3usin