- 博客(34)
- 资源 (1)
- 收藏
- 关注
原创 安装Python第三方库的常用方法和注意事项
安装Python的库这里,我来介绍一下平时我们安装python库的几种常用方法和一些注意事项。第一种,使用我们的pip工具第二种,使用IDE中集成的功能进行一键安装(以Pycharm 为例)第三种,使用Anaconda进行安装使用 pip 工具安装第三方库第一步,我们要打开 cmd,为了避免 后续内容的出错,我们强力建议以管理员身份运行!第二步,更新我们的 pip 工具python -m pip install --upgrade pip第三步,进行安装我们的第三方模块
2021-08-14 15:53:21
519
转载 机器学习算法--ALS
本文转载自:endymecy|ALS一、什么是ALSALS是交替最小二乘(alternating least squares)的简称。在机器学习中,ALS特指使用交替最小二乘求解的一个协同推荐算法。它通过观察到的所有用户给商品的打分,来推断每个用户的喜好并向用户推荐适合的商品。举个例子,我们看下面一个8*8的用户打分矩阵。 这个矩阵的每一行代表一个用户(u1,u2,…,u8)、每一列代表一个商品(v1,v2,…,v8)、用户的打分为1-9分。这个矩阵只显
2021-05-17 09:58:33
1306
原创 机器学习算法--协同过滤算法
0. 关键词推荐算法长尾理论UserCFItemCF1. 推荐算法 互联网的飞速发展使我们进入了信息过载的时代,搜索引擎可以帮助我们查找内容,但只能解决明确的需求。为了让用户从海量信息中高效地获得自己所需的信息,推荐系统应运而生。 推荐系统可以通过分析用户的历史记录来了解用户的喜好,从而主动为用户推荐其感兴趣的信息,满足用户的个性化推荐需求。推荐系统是自动联系用户和物品的一种工具,和搜索引擎相比,推
2021-05-15 20:07:02
2016
原创 Linux Ubuntu 安装 anaconda3和 Pycharm 社区版本
恰巧大数据实验安装 Anaconda & Pycharm,借此机会写篇博客分享一下Anaconda下载 Anaconda清华镜像网站看一看下载之后,放入 linux文件夹中安装 Anacondabash 下载的文件名之后,按照提示进行输入信息(大多数都是 回车)一定要选择好安装到的目录修改配置文件修改我们的配置文件,将 anaconda 写入环境变量中去然后使他生效source $/.bashrc然后,我们查看是否生效anaconda -V说明可以使用了A
2021-05-15 09:54:24
647
原创 ubuntu server安装hadoop和spark,并设置集群
安装server请看本人的上一篇博客Ubuntu Server 20.04.2 安装先前准备工作创建 hadoop用户创建用户之后,输入一下指令重启shutdown -r now登录 hadoop 用户安装 ssh 和 vim首先更新一下 apt 工具sudo apt-get update然后安装vimsudo apt-get install vim安装ssh serversudo apt-get install openssh-server安装 ssh 之后,使用 s
2021-05-13 23:39:13
342
原创 动态规划问题之背包模型(18题)
背包问题是动态规划问题的一大类型,下面我们对这个进行总结。以 Acwing y中总结的 几个类型,我写了几个题解应用知识点基础的 01 背包 :完全背包 :一、采药Acwing 题目链接#include <bits/stdc++.h>using namespace std;const int N = 1010;int f[N][N];int n, m;int main() { cin >> m >> n; memset
2021-05-13 15:33:15
577
原创 RSA公钥体系 与在 ssh中免密的登陆的应用
一、秘钥体系 第一部分查看书籍为 北京大学出版社出版的 丘维声老师的 数学思维方式与创新 在之前安全协议的讲解中,很多的协议都是用了秘钥的这一概念,相信很多同学对这不求甚解,下面我来系统的介绍秘钥体系,并且证明一下如今的公钥私钥RSA密码系统。秘钥,即密钥,在密码学中,密钥(key,又常称金钥)是指某个用来完成加密、解密、完整性验证等密码学应用的秘密信息。在对称密码学(或称密钥密码学)中,加密和解密用的是同一个
2021-05-13 09:37:31
407
原创 xshell连接Linux Server
由于server环境下无法使用vmtools,所以推荐使用shell工具进行链接使用。下载的内容源自果核,使用方法:xhell压缩包里面有crack目录,将nslicense.dll文件覆盖到软件目录xhellplus,将nslicense.dll文件分别覆盖到软件Xftp 7目录和Xshell 7目录下载包点击上文shell工具的链接即可下载。现在可以打开 我们安装 pojie 的 xshell然后,我们设置完成之后,点击链接我们输入 who 和 who am I 查看自己
2021-05-12 21:46:49
301
1
原创 虚拟机安装 服务器 Ubuntu Server20.04.2
虚拟机安装 服务器Ubuntu Server20.04.2 下载地址VMware创建新的虚拟机首选选择典型稍后安装操作系统,并点击下一步选择Linux Ubuntu64位命名虚拟机指定虚拟机的容量点击确定之后开启虚拟机选择自己下载的镜像文件打开虚拟机进行配置单击开启此虚拟机,我们进行配置选择合适的语言,这里选择English,选择中文听其他博主说,可能会出现奇奇怪怪的问题选择 donedone设置镜像源地址
2021-05-12 10:53:25
601
原创 机器学习算法--线性回归分析(单元和多元)
关键词分类模型、回归模型存在序的离散属性、不存在序的离散属性有监督的机器学习回归的分类(输入变量数目,输入变量和输出变量的关系)已知数据集,未知参数均方误差最小化,最小二乘法一元线性回归多元线性回归一、什么是回归分析分类模型的输出值是离散的 classification回归模型的输出值是连续的 regression倘若在离散属性之间存在序的关系,可通过连续化,将其转化为连续值。倘若在离散属性之间不存在序的关系,假设为 k 个属性值,通常将
2021-05-11 20:58:21
2047
2
原创 动态规划之最长上升子序列模型
动态规划分为很多模型,比如说数字三角形模型,最长上升子序列模型,背包模型,状态机模型,状态压缩,区间dp,树形dp等等下面,我就Acwing提高课中,最长上升子序列模型进行了整理。一、怪盗基德的滑翔翼题目链接如下 怪盗基德的滑翔翼 根据题目的描述信息可知,该题目就是要求对于某一个建筑,往 左 能够最长下降子序列的长度,或者是往 右的租场下降子序列的长度,因此有两种解法一种是我们常见的dp最长上升子序列,还有一种就是贪心最长上升子序列。下面,是我给出的两种解法,具体的解释都放在了代码里面#inc
2021-05-11 17:48:38
564
4
原创 Ubuntu从零安装 Hadoop And Spark
安装 linux 以Ubuntu为例选择镜像,虚拟机安装虚拟机下,直接安装镜像即可,选择好自己的配置,一定要注意路径名选好,而且和你虚拟机的名称匹配,这里我的镜像是 ubuntu-20.04.2.0-desktop-amd64.iso安装 Hadoop安装 Spark,并使用PySpark测试...
2021-05-09 13:59:29
1985
8
原创 第一章、OS引论1
1.1 操作系统的目标和作用1.1.1 操作系统的目标计算机上安装操作系统,主要目标是:方便性、有效性、可扩充性和开放性。方便性:方便用户,使计算机变得易学易用有效性:提高系统资源(资源指CPU(处理机),存储器,文件(数据和程序),外设)利用率和系统的吞吐量(吞吐量为单位时间完成的作业数量)可扩充性:是为了适应计算机硬件、体系结构以及计算机应用发展,OS从早期的无结构化⇒\Rightarrow⇒模块化结构⇒\Rightarrow⇒层次化结构⇒\Rightarrow⇒微内核结构。如今的微内核结
2021-03-03 20:33:39
400
2
原创 JavaScript入门介绍 1 2021/02/27
一、JavaScript简介一1.1 javascript 简介JavaScript是Web页面中的一种脚本编程语言,可用于Web系统的客户端和服务器端编程前身叫做LiveScript,是Netscape公司开发的脚本语言。在Sun公司推出Java语言后, Netscape公司和Sun公司于1995年一起重新设计了LiveScript,并将其更名为JavaScript。1.2 JavaScript 嵌入在 Html 中嵌入 Html在HTML中通过**<script>…
2021-03-03 20:31:10
279
1
原创 html的实战性介绍
Html 简介超文本结构语言html并非一种编程语言, 而是一种描述超文本文档的标记语言,用html编写的超文本文档成为html文档。超文本文档指的是,可以加入图片、声音、动画、影视等内容,并可以利用超链接方便的从一个文件跳转到网络上其他主机的另一个文件。Html标签结构形态Html的标签主要有三种形态,如下所示:<标签>元素</标签>是开始标签,中间元素,结束标签<标签 属性名=“属性值”>元素</标签>属性表示标签的信
2021-03-03 20:30:21
570
1
原创 java 流程控制篇 2021/02/26持续更新中
1. 用户交互Scanner1.1 简单的Scanner用法首先,需要 import java.util.Scanner其次,需要创建一个 Scanner 类的对象, Scanner s = new Scanner(System.in);通过调用Scanner对象的方法来完成, 一定要注意有开有关,最后要调用方法 close()方法名称搭配方法用途boolean hasNext()String next()一个用于查看是否有下一个输入,一个用于接收,空格视为结束
2021-03-03 20:29:05
129
1
原创 Java入门篇 2021/02/22
Java入门篇 2021/02/22Java的三大版本java三大版本主要包括 JavaSE, JavaME, JavaEE,其中现如今的JavaME已经是很少见了,JavaSE是JavaEE的基础。JDK、JER、JVM三个关系JDK, JRE, JVM具体的关系可以参照下图,是名副其实的包含关系。JDK的安装1. 卸载JDK1. 首先需要删除Java的安装目录(这个可以查到)2. 删除JAVA_HOME(环境变量)3. 删除path下面关于Java的目录(需要点进去环境变量的pa
2021-02-24 13:12:36
157
原创 JAVA基础学习预科部分 (Markdown + dox)2021/2/22持续更新中
javaSE从 2021/02/22开始,预计到2021/02/28,原本预计的算法题解先鸽一下。-博客Blog的重要性 & Markdown语法 基础markdown语法 标题, 直接使用 ‘#’,一级二级…五级字体,斜体(左右个一个∗*∗),加粗(左右个两个∗∗**∗∗),斜体且加粗(左右个三个∗∗∗***∗∗∗),删除(左右个两个 ~~ )demo:这是斜体, 这是加粗, 这是斜体且加粗, 则是删除线引用直接使用 大于号 >
2021-02-22 20:37:46
203
原创 leetcode第 46 场双周赛
题目Ahttps://leetcode-cn.com/problems/longest-nice-substring/因为 length≤100length \leq 100length≤100,我们直接就可以遍历子串然后更新答案。class Solution {public: bool Check(string s) { unordered_set<int> m; for (auto u : s) m.insert
2021-02-21 22:03:36
242
原创 Codeforces Round #702 (Div. 3)解题报告
Codeforces Round #702 (Div. 3)A. Dense Arrayhttp://codeforces.com/contest/1490/problem/A解题思路相邻的数字必然是倘若不满足的话是需要插入数据的,那么我们模拟插入数据即可.x=min(ai,ai+1),y=max(ai,ai+1)x = min(a_i, a_{i+1}), y = max(a_i, a_{i+1})x=min(ai,ai+1),y=max(ai,ai+1)倘若2∗x≤y2 * x
2021-02-17 15:31:04
227
原创 Educational Codeforces Round 104 (Rated for Div. 2)A~E解题报告
Educational Codeforces Round 104 (Rated for Div. 2)A. Arena\quad原题链接http://codeforces.com/contest/1487/problem/A\quad解题思路首先,我们看战斗次数是无限的,任意非最小值的英雄都有赢得次数,既然有场次可以赢,那么我们就可以给他安排连胜的序列,是可以成为最后的 winnner 的。因此最终结果为 n−cnt(min)n - cnt(min)n−cnt(min)总英雄数量减去最小值的次数
2021-02-16 14:06:51
357
原创 python基础知识点小结(2021/2/9)
python基础知识点小结(2021/2/9)\quad入门小知识\quad\quadcmd在cmd上进行python,直接输入 python\quad pythonpython退出cmd输入 exit()\quad exit()exit()到指定文件夹上运行python文件 python路径文件名.py\quad python 路径文件名.pypython路径文件名.py\quad\quadpython注释单行注释#\quad\##多行注释′′′′′′\quad ''''''\qua
2021-02-14 18:44:52
1780
5
原创 LeetCode228场周赛解题报告
LeetCode228场周赛解题报告生成交替二进制字符串的最少操作数原题链接https://leetcode-cn.com/contest/weekly-contest-228/problems/minimum-changes-to-make-alternating-binary-string/解题思路直接进行暴力的将二进制字符串枚举,首个字符是0,还是1,枚举之后取最小值AC代码class Solution {public: int minOperations(string s)
2021-02-14 11:23:14
1188
原创 Codeforces Round #700 (Div. 2)A~D2解题报告
Codeforces Round #700 (Div. 2)A~D2解题报告A Yet Another String Game原题链接http://codeforces.com/contest/1480/problem/A解题思路Alice想让更小,先手Bob想让其更大,后手解决方案当然是贪心,从第一个排到最后一个如果不是选择当前未更改的第一个,那么被别人修改,那么就会往反方向走了AC代码#include <bits/stdc++.h>using namespace
2021-02-13 19:31:03
451
原创 Codeforces Round #701 (Div. 2)赛后补题报告(A~D)
Codeforces Round #701 (Div. 2)赛后补题报告(A~D)A. Add and Divide原题信息http://codeforces.com/contest/1485/problem/A解题思路对于题目基本有两种方式,一种是直接暴力求解,第二种是使用函数求导进行严格证明 暴力求解a=1e9a=1e^9a=1e9不难看出,操作最多为 50次,因为249=5629499534213122 ^ 49 = 562949953421312249=562949953421312
2021-02-13 16:55:04
368
1
原创 LeetCode第 227 场周赛题解
LeetCode第 227 场周赛题解检查数组是否经排序和轮转得到原题链接https://leetcode-cn.com/problems/check-if-array-is-sorted-and-rotated/解题思路直接进行测试就行,因为数组的数据范围很小,直接进行O(N2)O(N^2)O(N2)算法即可,注意数组下标的求余AC代码class Solution {public: bool Check(vector<int> a, vector<i
2021-02-08 17:03:08
165
原创 Codeforces Round #693 (Div. 3)A~G解题报告
Codeforces Round #693 (Div. 3)解题报告A Cards for Friends原题信息解题思路本题就是一个找 x/2i=old,y/2j=oldx/2^i=old,y/2^j=oldx/2i=old,y/2j=old, 返回 2i∗2j>=n2^i*2^j>=n2i∗2j>=n一般这样的题目都需要注意使用 LLAC代码#include <cstdio>#include <cstring>#include <alg
2021-02-07 19:49:05
218
原创 LeetCode第45场双周赛-解题报告
LeetCode第45场双周赛-解题报告A. 唯一元素的和原题链接https://leetcode-cn.com/problems/sum-of-unique-elements/解题思路因为数据范围比较小,可以直接模拟,如果出现一次就加上去。或者是直接map打表也可以AC代码暴力class Solution {public: bool Check(int x, vector<int> &nums){ int cnt = 0;
2021-02-07 18:15:39
192
原创 Codeforces Round #697 (Div. 3)A~G解题报告
Codeforces Round #697 (Div. 3)A~G解题报告题 A Odd Divisor题目介绍解题思路乍一想本题,感觉有点迷迷糊糊,但是证难则反,直接考虑没有奇数因子的情况,即 N = 2i2^{i}2i,那么当N != 2i2^i2i时,就有 奇数因子注意使用 LLAC代码#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>
2021-02-04 17:25:44
179
1
原创 Educational Codeforces Round 103 (Rated for Div. 2)A~E解题报告
Educational Codeforces Round 103 (Rated for Div. 2)A. K-divisible Sum原题信息解题思路AC代码#include <bits/stdc++.h>using namespace std;typedef long long LL;const int N = 100010;int main(){ int t; cin >> t; while (t -- ) {
2021-02-04 16:27:06
301
原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛)解题报告
第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛)题目总结A题 切蛋糕题目信息解题思路如果我们将 1/k展开到二进制的形式,那么就可以计算出 需要 多少块1/(2^i) 蛋糕,因此就可以创建出分割的方案,最后进行打包。本题还有一个有趣的地方是,知道需要多少块的蛋糕后,还需要计算出需要切割多少次,假如说需要 1个四等分的, 1个八等分的,3个十六等分的,4个三十二等分的那么 十六等分的需要切割次数 ⌈\lceil⌈42\frac{4}{2}24⌉\rceil⌉=2,可以得到四个三
2021-02-02 17:01:50
308
原创 Codeforces Round #698 (Div. 2) A-E解题报告与解法证明
Codeforces Round #698 (Div. 2) A-E解题报告与解法证明题目解法总体概括A Nezzar and Colorful Balls#include <bits/stdc++.h>using namespace std;const int N = 110;int a[N], f[N];int main(){ int t; cin >> t; while (t -- ) { static int
2021-02-01 21:56:06
172
原创 Codeforces Round #697 (Div.3) A~G解题报告与解法证明
题目大体概括A#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>using namespace std;typedef long long LL;const int N = 500;LL a[N];int sz;bool Check(LL n){ for (int i = 0; i <= sz; i ++ ) {
2021-01-27 17:24:07
172
原创 python入门字符串
python 字符串str, ‘’, ‘’ ‘’, ‘’’ ‘’’;python没有字符,只有字符串hh切片字符串不可以修改,修改的话,类似于tuple,修改的话, 只可以整体修改tuple 也是可这样,确切的说只是修改了指针的指向内容就是相当于我们之前的字符串常量, 不可以别修改, 只是可以改你指向的方向函数请看转载https://blog.youkuaiyun.com/marvin_wind/article/details/79903175格式化字符串format简单应用“{} lo
2020-05-29 11:41:58
176
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人