- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 第二章 用户行为数据
啤酒和尿布的故事,找出”购买A商品的用户都购买B“这种规律。 基于用户行为分析的这种类型的推荐算法,称为协同过滤算法 协同过滤:用户和网站互动,过滤掉自己不感兴趣的物品 2.1 用户行为数据简介 用户行为数据以日志形式存在。 网站运行会产生大量原始日志 raw log,按照用户行为汇总成会话日志session log, 每次会话表示一次用户行为和对应服务。 比如用户搜索行为,展示日志impression log记录查询结果,点击日志click log记录用户的点击行为。 用户行为分类 1. 显示反馈行
2020-06-20 18:57:49
2278
原创 基础篇-4.1 最临近规则分类 KNN算法
最临近规则分类 K-Nearest Neighbor 临近样本取样 1.综述 解决classification分类问题 属于基于实例的学习instance-based learning,懒得学习lazy learning(在处理训练集时不建立任何模型,在处理未知的数据时才和已知的数据进行比较,来进行分类) 2.例子 !](https://img-blog.csdnimg.cn/20200620110324929.png?x-oss-process=image/watermark,type_ZmFuZ3
2020-06-20 11:50:55
228
原创 一.好的推荐系统
1.1 什么是推荐系统 推荐系统就是自动联系用户和物品的一种工具,它能够在 信息过载的环境中帮助用户发现令他们感兴趣的信息,也能将信息推送给对它们感兴趣的用户 1.2 个性化推荐系统的应用 1. 电子商务 例如亚马逊,组成部分包括 -推荐结果,包含标题,缩略图,及其他属性 -推荐结果的分数,反应推荐的质量 -推荐理由看,亚马逊基于隐私,允许用户禁用推荐理由 推荐算法包括、 -基于物品的推荐算法 item-based method,给用户推荐之前喜欢的类似的物品 -个性化推荐列表,按照facebook的
2020-06-19 18:32:28
437
原创 mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor...
一般这个错误是由密码错误引起,解决的办法自然就是重置密码。 假设我们使用的是root账户。 编译加 lmysqlclient 1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下: #vim /etc/my.cnf(注:windows下修改的是my.ini) 或者 vim /etc/mysql/mysql.conf.d/mysqld.cnf 在文档内搜索mysqld定位到[mysqld]...
2020-04-30 23:24:10
1200
原创 多态-虚函数-虚表-虚析构函数
1.虚表 (x86环境) 2.子类只重写一部分父类的虚函数的情况 #include "head.h" /* * c++的多态通过虚函数 virtual function 来实现 * 虚函数: 被virtual修饰的成员函数 * 只要在父类中被声明位虚函数,子类中重写的函数也自动变成虚函数 * 即子类中可以省略virtual关键字 */ /* * 虚函数的实现原理是虚表,这个...
2020-03-03 23:02:33
306
原创 多态
1.多态,重写,父类与子类指针,虚函数 #include "head.h" //重载:函数名一样,参数不一样 //重写(覆盖override):子类继承父类的函数,实现自己的功能 // 函数名,返回值,参数都和父类一模一样 /* 多态: * 同一操作作用于不同的对象,可以有不同的解释,产生不同的效果 * 在运行时,可以识别真正的对象类型,调用对应子类中的函数 * 但是c+...
2020-03-03 02:54:07
189
原创 父类指针指向子类指针
1.父类指针和子类指针 //1.父类指针 指向 子类指针,继承的方式必须是public #include "head.h" class Person { public: int m_age; }; class Student : public Person { public: int m_score; }; int main() { //1.父类指针 指向 子类指针,继承的方式必须是p...
2020-03-03 02:51:54
714
原创 绪论
1.1 数据库系统概述 1.1.1 四个基本概念 1.数据data:是数据库中存储的基本对象 描述事物符号的记录。数字,文字,音视频等 其含义与语义密不可分 2.数据库DataBase,DB 是长期储存在计算机内、有组织的、可共享的大量数据的集合。 基本特征: 1)按一定的数据模型组织,描述,存储 2)可共享,冗余度小,易拓展 3)数据独立性高 3.数据库...
2020-03-01 21:49:26
158
原创 父类的构造函数
#include "head.h" class Person { public: Person() { cout << "Person::Person()" << endl; } Person(int age) : m_age(age) { cout << "Person::Person(int age)" << endl; ...
2020-03-01 19:09:34
849
原创 初始化列表
1.初始化列表 1)初始化列表里可以放函数 图一中等号右边能放什么,初始化列表的括号里就能放什么 2).初始化顺序 a. 等同于: m_age = m_height;//未知 m_height = m_height;//180 结果: b. 初始化的顺序只和声明时候的顺序有关 2. 初始化列表与默认参数的配合使用 注: 为什么默认参数只能放声明里面?? (默认参数从右到左顺序,tes...
2020-03-01 16:02:12
416
原创 声明和实现分离
Person.h文件 class Person { private: int m_age; public: void setAge(int age); int getAge(); Person(); ~Person(); }; Person.cpp文件 #include "Person.h" void Person::setAge(int age) { m_age = age; }...
2020-02-17 14:07:44
231
原创 内存空间的布局,malloc ,new
每个应用都有自己的独立空间 ,其内存大小一般有以下几大区域 2.堆空间 1.malloc/free void test() { int *p = (int *) malloc(4); *p = 10; /*char *p = (char *) malloc(4); p[0] = 10; p[1] = 11; p[2] = 12; p[3] = 13;*/ /* *p = ...
2020-02-17 00:12:17
181
原创 面向对象1--类与对象,this指针
** 类 ** 每次创建对象, 都会给成员变量分配内存,不会每次都给函数分配内存(函数每次在编译完后都有自己的内存地址,只有 一份,通过函数地址调用函数) 三个函数的地址相同。如果编译器扫描发现某个函数没有被调用,那么这个函数都没有地址 调用函数,执行函数代码,其实就是cpu在访问代码区的内存(指令) 代码区是只读的 函数代码(最终转成机器指令)存储在代码区 函数里面的局部变量存储在占空间 ...
2020-02-15 20:44:35
241
原创 汇编_x86_x64
一。汇编的总类 二。x64_寄存器 1.寄存器与内存 通常,cpu会先将内存中的数据存储到寄存器中,然后再对寄存器中的数据进行运输 假设,内存中有块红色内存空间的值是3,现在想把他加1,并将结果存储到蓝色内存空间 2. 64bit下 RAX, RBX,RCX, RDX 特定用途的寄存器 一个寄存器可存8个字节 32bit下 叫EAX, EBX, ECX, EDX 16位下, AX, BX,...
2020-02-13 22:35:25
448
1
原创 const
1。定义 const是常量的意思,被其修饰的变量不可修改 如果修饰的是类,结构体(的指针),其成员也不可以更改 定义常量的时候就需要给其赋值 const int age = 10; //age不可以被修改 age = 20; //error struct Date { int year; int mon; int day; }; cosnt Date d1= (2020, 2, 12); D...
2020-02-12 23:27:29
123
原创 extern "C",头文件重复包含,#pragma once
1.用c语言的方式编译代码 也可以这样用,用大括号将声明括起来 2.如果函数同时有声明和实现,要让函数声明被extern “C” 修饰,函数实现可以不修饰 函数声明加extern C加修饰 3.函数重载,一个加,一个不加,ok 一个用c方式编译,一个用c++编译, 可以重载,ok 完全相同函数,一个加一个不加, 会产生二义性,报错 2.c, c++混合开发时,可能会用一下操作 如c++开...
2020-02-12 01:03:09
737
原创 默认参数
如: int sum(int v1 = 4, int v2 = 6) { return v1 + v2; } 1.默认参数只能从右到左的顺序,严格按照顺序 int sum(int v1 = 4, int v2 )//错误 int sum(int v1 , int v2 = 6 )//ok 2.默认参数的值可以是常量,全局符号(全局变量,函数名) int age = 20; int sum(int ...
2020-02-11 23:34:41
1782
原创 函数重载
1.定义 a.函数名相同,函数的参数个数不同 b.函数名不同,参数的类型/顺序不同 注:c语言不支持函数重载 返回值类型与函数重载无关,会产生歧义(二义性) 调用函数时实参类型的隐式转换也可能产生二义性 2.为什么c++支持函数重载? 采用了name decoration技术,c++编译器默认会对符号名(入函数名)进行改编修饰, 不同编译器(g++,mfc)有不同的修改规则,函数的内存地址会不一样...
2020-02-11 22:55:17
184
原创 前言
一。程序的本质 1.软件/程序执行的过程 硬盘(程序/软件)---装载---> 内存 ---读/写--> CPU-->控制设备 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200210220528233.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10...
2020-02-10 22:57:49
136
原创 Mysql 安装和 连接navicat
linux安装mysql 参考: https://zhuanlan.zhihu.com/p/64080934 方法 1、从 Ubuntu 仓库安装 MySQL 首先,输入下列命令确保你的仓库已经被更新: sudo apt update 现在,安装 MySQL 5.7,简单输入下列命令: sudo apt install mysql-server -y 就是这样!简单且高效。 要验证 MySQL 已...
2020-01-19 22:00:03
139
剑指offer_经典面试程序题
2018-07-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅