- 博客(21)
- 收藏
- 关注
原创 Python序列Day3
序列是一种数据存储方式,用标注,逗号分隔的一组值。在内存中,序列就是一块用来存放多个值的连续的内存空间。常见序列结构有:字符串、列表、元组、字典、集合。
2025-05-08 18:15:10
741
原创 Pyhton字符串Day2
相邻的两个或多个 字符串字面值 (引号标注的字符)会自动合并。可以通过参数end=“任意字符串”,实现末尾添加任意内容。join()函数在拼接字符串之前会计算所有字符串的长度,然后逐一拷贝,仅新建一次对象,更高效。的,[]可以获取字符串指定位置的字符,但是不能更改。in/not in判断某个字符是否存在于字符串中。连续三个单引号或三个双引号创建多行字符串。使用+将多个字符串拼接起来,会。{:.2f} 保留小数点后两位。通过单引号或双引号创建字符串。使用*可以实现字符串复制。正向搜索,0,1,2…
2025-05-08 15:45:05
269
原创 Python入门day1
变量名也就是对象的引用,而非对象本身。因为变量存储的是对象的地址(identity),变量通过地址引用对象。int可以存储任意大小的整数,long被取消。因此,Python可以做超大数计算,而不会造成“整数溢出”。Python中,一切皆对象。每个对象由identity,type和value组成。Python解释器可以和用C开发的应用链接起来,用来扩展和控制应用。Python不支持常量,通常采用大写字母与下划线定义常量名。交互模式下,上次输出的表达式会赋给。
2025-05-08 11:56:29
365
原创 常用数据库
CREATE SCHEMA [ <模式名> ] AUTHORIZATION < 用户名 >;要创建模式,调用该命令的用户必须拥有数据库管理员权限,或者获得了DBA授权eg:为用户WANG定义一个模式S-C-SC定义模式实际上定义了一个命名空间,在这个空间中可以进一步定义该模式包含的数据库对象,如基本表、视图、索引等。CREATE TABLE <表名>(<列名><数据类型>[列级完整性限制])……[,<表级完整性约束>];eg:建立一个学生表Student。
2025-03-29 16:01:43
627
原创 各类算法性能分析
以下是对各算法性能指标的概览,结合推荐系统核心目标进行解读:核心观察:算法原理Item-CF通过计算物品之间的相似度(如余弦相似度、改进的余弦相似度),为用户推荐与其历史喜好物品相似的物品。其核心公式为:[\text{预测评分} = \frac{\sum_{j \in N(i)} \text{sim}(i,j) \cdot r_{uj}}{\sum_{j \in N(i)} |\text{sim}(i,j)|}]其中,(N(i))为用户评分过的物品,(\text{sim}(i,j))为物品相似度。
2025-03-29 10:28:18
894
原创 八股文疑难点01虚函数实现多态
假设有一个基类ClassA,一个继承了该基类的派生类ClassB,并且基类中有虚函数,派生类实现了基类的虚函数。我们在代码中运用多态这个特性时,通常以两种方式起手:以上两种方式都是用基类指针去指向一个派生类实例,区别在于第1个用了new关键字而分配在,第2个分配在。该指针指向一个在堆上实例化的子类对象。基类如果存在虚函数,那么在子类对象中,除了成员函数与成员变量外,编译器会自动生成一个指向该类的(这里是类ClassB)的指针,叫作虚函数表指针。
2025-03-24 21:46:56
798
原创 推荐算法分析
尝试更复杂的融合方法:考虑使用更复杂的融合策略,比如加权平均法、XGBoost 或 LightGBM。调整 DNN 模型结构:增加更多的层数或调整超参数,增加训练 epoch,避免过拟合。更多特征输入:除了传统的评分数据,尝试引入更多的用户和物品元数据(例如,用户年龄、性别,物品类别等)作为输入。基于 DNN 的推荐模型优化:如果 DNN 作为重要的组成部分,确保嵌入层和网络结构能够有效地捕捉用户和物品之间的复杂交互。关注多样性和个性化。
2025-03-21 22:02:51
1594
原创 ThreadCache.h
这两个括号结束了类和命名空间的定义。线程本地内存池类实现了线程本地的内存池,每个线程都有一个独立的内存池,用来减少线程间的内存竞争,提高多线程程序的性能。自由链表:通过freeList_数组,管理了不同大小的内存块的自由链表,从而高效地管理内存。中心缓存池交互:当线程本地内存池没有足够的内存时,会从中心缓存池获取内存;当线程不再需要某块内存时,会将其归还给中心缓存池。优化:通过将内存分配和释放局部化到每个线程,避免了多线程环境中对共享资源的争夺,从而提高了性能。
2025-03-11 14:58:25
801
原创 Linux常用命令
前面介绍的命令都是静态地查看系统状态,不能实时滚动最新数据,而top命令能够动态地查看系统状态,因此完全可以将它看作是Linux中“强化版的Windows任务管理器”。Linux系统中有多个用于查看文本内容的命令,每个命令都有自己的特点,比如这个cat命令就是用于查看内容较少的纯文本文件。tail命令最强悍的功能是能够持续刷新一个文件的内容,当想要实时查看最新的日志文件时,这特别有用,此时的命令格式为“stat命令用于查看文件的具体存储细节和时间等信息,英文全称为“status”,语法格式为“
2025-03-10 19:55:48
840
原创 C/C++八股文day7
在范围 for 循环中,不要添加或删除容器元素(如。迭代器的容器均适用,如。),这会导致迭代器失效。类型 对象(参数);类型 对象{参数};
2025-03-08 14:50:50
896
原创 C/C++八股文day5
由于疏忽或错误造成了程序未能释放掉不再使用的内存的情况。内存泄漏并非指内存物理上的消失,而是应用程序分配某段内存后,由于设计错误,失去了对该段内存的控制,因而造成了内存的浪费。
2025-03-06 16:05:51
732
原创 C/C++八股文day3
特性C 中的structC++ 中的struct默认访问权限公有公有成员函数不支持支持继承不支持支持与class的区别无class默认访问权限不同类型名必须使用struct关键字声明变量可以直接使用结构体名声明变量成员初始化不支持直接初始化支持直接初始化(C++11及以上)模板不支持支持空结构体大小0(或编译器相关)1特性C 语言C++ 语言编程范式过程式编程多范式(过程式、面向对象、泛型等)面向对象不支持支持标准库简单(如stdio.h。
2025-03-03 14:33:48
942
原创 vector容器
你也可以通过自定义比较函数来实现更复杂的排序逻辑。// 降序排序// 使用自定义比较函数进行排序// 输出排序后的vectorreturn 0;如果vector中存储的是自定义对象,可以通过重载运算符或提供自定义比较函数来排序。int age;// 按年龄升序排序// 按年龄升序排序// 输出排序后的vectorreturn 0;Bob (20)Alice (25)使用std::sort可以对vector进行排序。默认是升序排序,可以通过实现降序排序。
2025-02-27 14:48:10
2524
原创 C/C++八股文day2
volatile修饰符用于声明变量,表明该变量的值可能会在程序外部的环境中发生变化,而编译器不应对其值进行缓存或者优化。volatile修饰的变量会直接从内存中读取其值,而不是从寄存器缓存中读取。与const修饰符不同,volatile主要是为了防止编译器进行优化,而const是为了确保变量的值不被改变。volatile的主要作用:防止编译器对变量进行优化,确保每次都从内存中读取变量的最新值。使用场合:主要用于中断服务程序、硬件寄存器访问和多线程编程等场景。限制volatile。
2025-02-26 10:34:52
797
原创 C/C++八股文
如果找不到完全匹配的方法,编译器会尝试进行隐式类型转换(如 int 转 double),如果仍然无法匹配,则报错。inline是先将内联函数编译完成生成了函数体直接插入被调用的地方,减少了压栈,跳转返回的操作。1、指针存放某个对象的地址,其本身就是变量,本身就有地址,所以有指向指针的指针。的本质是子类覆盖父类的方法,始终只有一个方法被调用(子类重写的方法)。一个方法有不同的版本,存在于一个类中,可以实现同一个方法名的不同功能。以实现不同的功能,一般是用于子类在继承父类时,重写父类的方法。
2025-02-25 15:42:35
1108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1