
代码学习
余思荷
记录余小荷的进步过程,为了成为一个优秀的程序媛!给老子冲!
展开
-
【面试准备】数据分析常考考点(自用)
一、什么是AARRR模型,以及为什么它如此受欢迎?让我们深入了解Dave McClure的模型。AARRR代表:用户拉新Acquisition用户激活Activation用户留存Retention用户推荐Referral商业收入Revenue二 、RARRA模型是托马斯·佩蒂特Thomas Petit和贾博·帕普Gabor Papp对于海盗指标-AARRR模型的优化。RARRA模型突出了用户留存的重要性。用户留存Retention:为用户提供价值,让用户回访。用户激活Activatio原创 2022-04-01 14:04:26 · 1277 阅读 · 0 评论 -
【C++】cpp学习笔记三 (多态,虚函数,数据抽象,数据封装,接口&抽象类)
C++ 多态多态按字面的意思就是多种形态。当类之间存在层次结构,并且类之间是通过继承关联时,就会用到多态。C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。每个子类都有一个函数的独立实现。这就是多态的一般使用方式。有了多态,您可以有多个不同的类,都带有同一个名称但具有不同实现的函数,函数的参数甚至可以是相同的。虚函数虚函数 是在基类中使用关键字 virtual 声明的函数。在派生类中重新定义基类中定义的虚函数时,会告诉编译器不要静态链接到该函数。我们想要的是在程序中任原创 2022-03-15 11:18:53 · 187 阅读 · 0 评论 -
【杂七杂八的记录】2022-3-14
最近一直在学习新的东西但发现自己已经陷入了一个怪圈里就是不知道现在学的东西到底能派上什么用场?现在学的东西到底能不能派上用场呢?我知道持续的学习肯定是没错的但我的方向是不是对的呢?(笑cry)感觉有很多事情要做,又没有什么切实的方向这个假期学了python3:目前用python刷题,帮几个研究生同学解决了编程问题,感觉就是,好上手,用着也蛮舒服,总有不同的隐藏函数给你出乎意料的惊喜也看完了C++教程:懂了又好像没完全懂,学习路径和python是一样的但明显没有python扎实(暂时没什么勇原创 2022-03-14 20:26:19 · 2243 阅读 · 0 评论 -
【Python】案例九 Python在科研中的优势/倒序遍历/进制转换
一、为什么Python中整型不会溢出在python2时代,整型有 int 类型和 long 长整型,长整型不存在溢出问题,即可以存放任意大小的整数。在python3后,统一使用了长整型。这也是吸引科研人员的一部分了,适合大数据运算,不会溢出,也不会有其他语言那样还分短整型,整型,长整型…因此python就降低其他行业的学习门槛了。二、【Python】倒序循环 倒序遍历python倒序遍历三、Python format 格式化函数format函数可以格式化输出数据并且决定输出的顺序四、pytho原创 2022-03-14 20:09:31 · 9093 阅读 · 0 评论 -
【C++】实践期间所遇问题及解决方法(1)
1,VS2017调试运行期间:已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。链接:已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件原创 2022-03-06 20:34:36 · 344 阅读 · 3 评论 -
【C++】cpp学习笔记(一)
C++ 简介C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++ 程序。面向对象程序设计C++ 完全支持面向对象的程序设计,包括面向对象开发的四大特性:封装抽象继承多态g++ 应用说明程序 g++ 是将 gcc 默认语言设为 C++ 的一个特殊的版本,链接时它自动使用 C++ 标准库而不原创 2022-03-06 20:00:01 · 155 阅读 · 0 评论 -
【Python】案例八 Python常见概念与一般概念的区别
函数与方法的区别函数是一段代码,通过名字来进行调用。它能将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。所有传递给函数的数据都是显式传递的。方法也是一段代码,也通过名字来进行调用,但它跟一个对象相关联。方法和函数大致上是相同的,但有两个主要的不同之处:方法中的数据是隐式传递的;方法可以操作类内部的数据(请记住,对象是类的实例化–类定义了一个数据类型,而对象是该数据类型的一个实例化)Java中只有方法,C中只有函数,而C++里取决于是否在类中。lambda 与def原创 2022-02-17 10:25:54 · 115 阅读 · 2 评论 -
【Python】案例七 模块
Python3 模块在前面的几个章节中我们基本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了。为此 Python 提供了一个办法,把这些定义存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块。模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。下面是一个使用 python 标准库中模块的例子。# -*- co原创 2022-02-15 10:45:03 · 366 阅读 · 0 评论 -
【Python】案例五 字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。创建字符串很简单,只要为变量分配一个值即可。例如:var1 = 'Hello World!'var2 = "Python Runoob"Python 访问子字符串,可以使用方括号来截取字符串,如下实例:# -*- coding: UTF-8 -*-var1 = 'Hello World!'var2 = "Python Runoob" print "var1[0]: ", var1[0]print "va原创 2022-02-09 11:01:14 · 565 阅读 · 0 评论 -
【Python】案例四 循环语句
循环语句原创 2022-02-09 10:13:14 · 964 阅读 · 0 评论 -
【Python】案例三 条件语句
条件语句原创 2022-02-08 20:03:35 · 926 阅读 · 0 评论 -
【Python】案例二 运算符(成员运算符;身份运算符)
运算符原创 2022-02-08 19:52:31 · 399 阅读 · 0 评论 -
【Python】案例一 标准数据类型
标准数据类型原创 2022-02-08 19:31:32 · 159 阅读 · 0 评论 -
【实习日记】实习第N天 从零开始搭建一个tiktok puppet(一)
感觉自己在做一件不得了的事情,从一个只会C语言的渣渣,到现在强行做一个项目,真的就是,赶鸭子上架,硬着头皮上吧!!正式任务笔记(wechaty-puppet-maker)三个步骤:完成dingdong1,基于tiktok平台的dingdong 做出来2,把逻辑流程封装到puppet3,用wechaty里加入我们新封装的puppet完成此项目的详细步骤:第一步:dingdong的逻辑在tiktok平台中实现1,打开tiktok平台文档:tiktok开发平台文档(1)为了走通开发流程,首先你要原创 2021-10-28 10:46:56 · 802 阅读 · 4 评论 -
【实习日记】 第七天 加入相似的新功能➕学习访问联系人,通讯录,群组的方式
今天出门比较晚没自行车了差点迟到,幸亏有个老大爷过来投放自行车……神仙大爷,救我狗命。我今天在ding-dong.bot的包里发现了之前有人编好的程序,功能甚至还很齐全,可以访问联系人,访问群组,甚至可以推名片,惊了。先捋顺example源码,然后看看有没有机会把现有的功能加进去(可惜人家给的是javascript代码)进度还可以,但今天状态一般,能看多少看多少啊!!冲啊!首先先成功运行example代码: (已加入相似功能)结果如下:图一:登陆界面图二:原有功能(发ding回dong)原创 2021-10-12 10:01:39 · 100 阅读 · 0 评论 -
【实习代码剖析】所需知识集锦(一)
这属于工作需要,所以做的可能会稍微有些粗糙格式为“序号➕相关知识➕相关代码➕代码注释”一、import {…} from '…'import…from和import’…'之间的区别这个链接写的很详细,但现在我累了,看不进去,留一个索引,明天继续看。果然每次到快下班的时候就会很疲惫啊,今天真的做了好多好多事情,几乎吧学习贴上的所有代码都运行了一遍,就感觉特别有成就感,而且还改进了代码的运行方式,从原来必须成为js文件才能运行,变成可以直接运行ts文件,真的很有成就感,其实这份工作没有我想象中那么困难原创 2021-10-09 18:23:25 · 363 阅读 · 0 评论 -
【实习日记】 第六天 熟悉Node.js & Typescript语法
今天上班淋雨了……5555只能从坐公交迟到和骑自行车淋雨中二选一,我只能选择了淋雨……好啦好啦,修整一下开始今天的学习了!快快快,先消化一下昨天那一章一、当你声明一个新变量:牛逼啊,一个图就讲明白了↑,都是什么神仙帖子二、打印功能console.log(message);将变量的值打印到提示符。在这里,控制台是指终端窗口。函数log ()是用来在屏幕上显示文本。大概意思上就等于printf(“message”);这个帖子也超级绝,运算符语法讲的比较细致!三、函数定义functio原创 2021-10-09 16:52:21 · 246 阅读 · 0 评论 -
【实习日记】第五天 剖析源码+学习Node.js & Typescript基本语法
国庆假期结束了,其实在这里实习对我而言还算是比较轻松愉快的,虽然完成任务过程中出现的问题层出不穷,但也被克服问题的成就感包裹着,感觉每天在办公室就像在上自习一样。加油啦小荷!自从把example运行成功后接下来的任务就明晰一点了,首先要完成的是学会Node.js & Typescript这个语言,我决定从头学起,这个语言是一门类C语言,所以语法方面会有很多的相似点。所以给自己打打气!肯定行哒!加油加油!~首先我看了Typescript的声明文件,学习了一些基础语句的表示方法(但暂时没有学到逻辑)原创 2021-10-08 18:36:51 · 201 阅读 · 0 评论 -
【实习日记】 第四天 在VScode中搭建Node.js & Typescript运行环境并运行
来了来了我又来了今天是第四天,吃了一个鸡蛋灌饼后我开始了一天的学习:任务一:把example在VScode上跑起来这是昨天顺延的任务,我现在稍微有一丢丢头绪,刚刚一个大哥说我……是因为运行的机器是Windows代码才跑不起来的,我……现在……有点懵……遇到了一个很emo的问题:现在电脑运行的错误显示的是:如图显示是WECHATY_PUPPET_SERVICE_TOKEN这个包not found然后我点开了这个包:显示安装这个包需要用到docker然而……docker的适用及机器被要原创 2021-10-08 14:33:45 · 284 阅读 · 0 评论 -
【实习日记】第三天 调整版本 + 运行example
今天出门比较晚,发现小区门口居然一辆车也没有!!惊了!!然后用步行+公交的形式勉勉强强顺利打卡上班。今天看了公司给的指引文件,虽然是英语的,但我发现比我想象的有用!原来以为全都是背景介绍,后来发现居然有过程指引!!!我司YYDS!任务一:运行example首先第一步我发现自己安装的node版本过低,按照文件中的指示重新下载了最新版本,然后运行本程序可以用Google Cloud ShellYou can run this project on Google Cloud Shell by cli原创 2021-09-30 09:58:19 · 119 阅读 · 0 评论 -
【实习日记】第二天 搭建环境+看懂代码
今天来了公司我又是最早的Hhhh今天来了公司问了一个隔壁小米的大哥,大哥真的太好了5555(把身边的程序员胖友轮着麻烦了一遍)讲话的主要内容有:先看看js怎么写,js是一种函数式编程有一个example文件,要请教一下身边的人怎么debug它看看函数调用的流程根据调用堆栈js应该是单线程的应该学习一下VScode怎么调试JS应该很简单给了我很大的信心啊于是我决定首先还是要看懂代码包括,逻辑关系,函数调用顺序看懂代码之后学习一下如何debug,然后请教同事如何把主函数运行出来:原创 2021-09-28 11:56:18 · 381 阅读 · 0 评论 -
【实习日记】第一天:搭建平台+分析任务
今天小荷开始第一天的实习了!(2021年9月27日)来了办公室感觉环境真的非常好,有六个大小不一的会议室,工位非常宽松,上午9:30-10:00上班,晚上6:30-7:00下班,上班期间没什么人管你,(但是安排了一个比较复杂的任务)总体而言相比一般而言的程序员工作还比较轻松的啦~然后到工位上的第一件事就是搭建环境,我们用的编译器是VS code,语言是Node.js & Typescript:这个我真的是一窍不通……要从头开始学习,公司给安排了一个小的项目,准备记录下来:项目名称:通过 wec原创 2021-09-28 10:50:11 · 274 阅读 · 0 评论 -
【C语言】综合案例六十二 回文字符串(方法一)
案例描述回文字符串是正反读都一样的字符,比如“level”,"noon"都是回文字符串。案例要求从键盘输出字符串,并判断字符串是否为回文字符串。案例分析判断一个字符串是否为回文字符串时常用的方法有两种使用递归来解决问题使用指针来解决问题案例实现方法一通过观察可以知道,去掉回文字符串尾的字符后,剩下的字符串仍然是回文字符串,通过不断的去除首尾的字符,一层层检查,可以缩小问题的规模。去掉字符串首尾字符串后,得到一个子串,此时产生的新问题是检查子串是否为回文字符串,然后就发现可以用递归解决问题原创 2021-09-07 21:10:18 · 1964 阅读 · 1 评论 -
【面试准备】数据结构(一)线性表
数据结构是研讨数据的逻辑结构和存储结构,以及它们之间的相互关系并对与这种结构定义相应的运算,设计出相应的算法,确保经过这些运算后所得到的新结构是原来的结构类型。线性表的存储结构定长的顺序存储结构——顺序表简称顺序表,程序中通过创建数组来建立这种存储结构,其主要特点是为线性表分配一块连续的存储空间,线性表中的数据元素顺序的存储在这些地址连续空间中,以物理地址相邻来表示线性表中数据元素之间的逻辑关系,其不足是限制了线性表的长度变化。顺序表插入算法的时间复杂度是O(n)顺序表删除算法的时间复杂度是O原创 2021-09-05 16:05:56 · 266 阅读 · 0 评论 -
【C语言】案例六十七 神奇的#include <stdio.h>
案例描述学过文件包含后,不免有同学提出这样的问题:在同一文件中写两遍“#include <stdio.h>”,编译器进行编译时为什么没有报错呢?事实上,编译器不会报出“重定义”的错误,编译十分顺利,是不是很神奇呢?必备知识1,#ifdef指令如果想判断一个宏是否被定义,可以使用#ifdef指令,通常情况下,该指令需要和#endif一起使用,#ifdef指令的语法格式如下所示:#ifdef 宏名程序段1#else程序段2#endif在上述代码中,#ifdef指令用于控制单独的原创 2021-09-05 09:56:10 · 688 阅读 · 0 评论 -
【C语言】案例六十七 系统架构
案例描述此处的32和64是系统架构。案例要求使用条件编辑,根据条件输出对应的判定结果。如果系统是32位的,就输出“系统是三十二位的”;如果系统是64位的,就输出系统是64位的。案例分析上文提到“条件编辑”也是预处理的一种方式。一般情况下,C语言程序中的所有代码都要参与编译,但有时处于程序代码优化的考虑,希望源代码中的一部分内容只在指定条件下进行编译。在C语言中条件编译指令的形式有很多种,接下来将详细讲解一种最常见的条件编译指令:#if/#else/#endif,该指令根据常数表达式来决定某段代码是否原创 2021-09-04 18:21:25 · 229 阅读 · 0 评论 -
【C语言】案例六十六 文件包含
案例描述在程序中设计时需要很多输出格式,如整型,实型和字符型等等,在编写程序时会经常使用这些输出格式,如果多次书写这些格式会很繁琐,要求设计一个头文件,将经常使用的输出模式都写进头文件中,方便编写代码。案例分析除宏定义之外,文件包含也是一种预处理,它的作用就是将一个源程序晚间包含到另一个源程序文件中。本案例适合采用这种预处理语句。必备知识文件包含命令的形式同引入头文件一样,文件包含也是通过#include指令实现的,它的语法格式有两种,具体如下:格式一:#include <文件名>原创 2021-09-04 17:39:50 · 439 阅读 · 0 评论 -
【C语言】案例六十五 宏定义中参数的替换
1)若宏定义中的字符串出现运算符,需要在合适的位置上加括号,如果不添加括号可能出现错误,例如:#define S 3+4;如果有有一个语句a = S*c,宏定义替换后的语句a = 3 + 4 *c,这样显得不符合需求。2)宏定义的末尾不用加分号,如果加了分号,将被视为被替换字符串的一部分。宏定义只是简单的字符串替换,并不进行语法检查,因此,宏替换的错误要等到系统编译时才能被发现:例如:#define Max = 20;......if (result == Max)printf("equal原创 2021-09-04 17:03:53 · 1288 阅读 · 0 评论 -
【C语言】案例六十四 第二简单的预处理
案例描述本案例要求通过使用宏定义,依次交换两个一位数组中的元素。必备知识带参数的宏定义带参数的宏定义,其语法格式如下所示。#define 标识符(形参表) 字符单;上述语法格式和不带参数的宏定义有些类似,不同的是多了一个括号,括号中的“形参表”由一个或多个形参组成,当多余一个形参时,形参之间要用逗号进行分隔。对于带参数的宏定义来说,同样需要使用字符串替换宏名,使用实参替换形参。通过学习带参数的宏定义可以发现,带参数的宏定义和带参函数可以实现同样的功能,但两者却有本质的不同。如下表:由于宏原创 2021-09-04 11:25:18 · 128 阅读 · 0 评论 -
【C语言】案例六十一 综合案例:密码
案例描述此案例要求设计一种算法,把电文加密之后变成密文,利用解密函数解密,显示出明文的内容。案例分析将电文每个字符加上偏移值3,以字符“itcast”为例,对应字符“i”为“l”,对应字符“t”为“w”.案例实现1,案例设计先设计一个while循环,在循环中实现加密或者解密定义两个字符数组,用来保存明文和密文;第一次进入程序,默认使用加密功能,再之后根据文字提示可进行解密、加密或者退出程序的功能、2,完整代码#include <stdio.h>#include <原创 2021-09-02 17:45:30 · 367 阅读 · 0 评论 -
【C语言】案例五十八 字符串排序【strcmp函数strncmp函数选择排序】
案例描述案例要求对“c lanuage”,“hello world”,“itcast”,“strcmp”,"just do it"这五个字符串按照字母大小的排序,并将结果输出到屏幕上。案例分析此案例用到三个知识点:用指针数组构造字符串数组,使用指针数组中的元素指向各个字符串需要用字符串比较函数strcymp来比较字符数组中各元素的大小之后使用选择排序法进行由小到大的排序选择排序法1.选择排序法是将序列分为两段,有序前列和无序后列,每次查找无序后列中最大元素,将其插入到有序前列的最末尾处,原创 2021-09-01 21:31:56 · 2180 阅读 · 0 评论 -
【C语言】案例五十七 不使用strcpy函数进行复制操作
案例描述如题案例分析可以使用gets函数和puts函数进行复制操作,实现字符的获取和输出案例实现声明两个字符数组输入字符数组1后,通过循环将字符逐个输入字符数组2中打印完整代码#include <stdio.h>#include <stdlib.h>#include <string.h>#include <time.h>int main(){ char s1[50]; char s2[50]; int i = 0; pr原创 2021-09-01 17:35:59 · 1712 阅读 · 0 评论 -
【C语言】案例五十五 一句话中的单词数量
案例描述要求编程求出一句话中到底有多少单词。首先在屏幕上输入一句话,每个单词之间用一个空格隔开,要求第一个字符和最后一个字符都不能为空格;然后统计出这句话的单词数量,并把结果输出到屏幕上。案例分析本代码应实现以下功能:使用字符数组变量接收gets()函数获取的字符串计算字符数组中的空格数量,推算出此句话中的单词数量将统计结果输出案例实现1,案例设计首先使用gets()函数将输入的字符串保存在str数组中然后使用if语句判断用户输入的第一个字符是否为结束符,如果是,则要给出“这句话没原创 2021-09-01 11:28:27 · 771 阅读 · 0 评论 -
【C语言】案例五十四 【puts()函数和printf()函数的区别】
与puts函数相比,printf函数不会一次输出一整行字符,而是根据格式化字符串输出一个个“单词”。由于进行了额外的格式化工作,printf函数比puts函数效率稍低。然而printf函数可以直接输出不同类型的数据,因此printf函数比puts函数应用更为广泛。...原创 2021-09-01 11:07:46 · 227 阅读 · 0 评论 -
【C语言】案例五十三 删除字符串中子串【gets()函数 puts()函数】
案例描述从键盘输入一个字符串,输入要删除的字符串起始位置及长度,然后输出删除后的字符串。案例分析若要删除字符串中的子串,需要使用该子串后的字符从要删除的地方开始,逐一往前移动覆盖待删除字符。之前学习过的printf()函数和scanf()函数,他们分别用于向控制台中输出内容和从控制台上接受用户的输入。C语言还提供了针对字符串读取和输出的函数,即puts()函数和gets()函数。使用这两个专用函数能更顺利的完成此案例必备知识1,gets()函数gets()函数用于从控制台读入用户输入的字符串,原创 2021-09-01 11:01:46 · 1510 阅读 · 0 评论 -
【C语言】案例五十二 字符串替换(一)【字符,字符串,字符数组】
案例描述字符串替换是处理字符串时最常见的操作之一,也是学习字符串必须掌握的知识。本案例要求通过编程实现字符串“Good moring”到“Good evening”的转换。案例分析我们需要从字符串中被替换的位置开始,将要替换的内容逐个复制到原字符串中,直到字符串结束或者替换的字符串结束为止。为了顺利完成案例,需要先学习字符数组,字符串,字符指针等基础知识。必备知识1,字符数组字符数组是存放字符数据的数组,其中每一个元素都是单个字符(1)字符数组的定义字符数组定义的语法格式如下:char原创 2021-08-31 23:07:58 · 2557 阅读 · 0 评论 -
【C语言】案例五十一 员工档案管理系统
让我用心把你(的赞)留下来!案例描述本系统是员工档案管理系统,该系统包括姓名,性别,工号,年龄。进入系统输入密码,若密码错误三次则退出程序,此外,有输入数据,查看数据,数据查询,数据保存,数据排序等多项功能//初始密码为123456#include "stdio.h"#include "string.h"#include "stdlib.h"#include "malloc.h"#define OP sizeof(stu) typedef struct student{ char原创 2021-08-27 10:56:25 · 1172 阅读 · 0 评论 -
【C语言】案例五十 歌曲管理系统
让我用心把你(的赞)留下来!#include "stdio.h" #include "stdlib.h" #include "string.h" #include "ctype.h" #define M 50 /*定义常数表示记录数*/ typedef struct /*定义数据结构*/ { char songname[20];/*歌曲名*/ char name[20]; /*作者*/ char singer[20]; /*演唱者*/ char year[20]; /*年月日*/ }原创 2021-08-27 10:52:47 · 3622 阅读 · 1 评论 -
【C语言】案例四十九 学生档案管理系统
我仿佛已经明白了备受关注的密码所以你们期待已久的系统又来啦!(给我点赞!)案例描述本系统是学生档案管理系统,进入系统输入密码,若密码错误三次则退出程序,此外,有输入数据,查看数据,数据查询,数据保存,数据排序等多项功能完整代码://初始密码为123456#include "stdio.h"#include "string.h"#include "stdlib.h"#include "malloc.h"#define OP sizeof(stu) typedef struct stude原创 2021-08-27 10:50:51 · 2180 阅读 · 7 评论 -
【C语言】案例四十八 综合案例——天生棋局(围棋棋盘)
案例描述本案例要求创建一个棋盘,在棋盘生成的同时初始化棋盘,根据初始化后棋盘中棋子的位置来判断此时的棋局是否为一局好棋。具体要求如下:棋盘的大小根据用户的指令确定棋盘中的棋子数量也由用户指定棋子的位置由随机函数随机确定,若生成的棋盘中有两颗棋子落在同一行或者是同一列,则判定为”好棋“,否则判定为“不是好棋”案例分析本案例需要根据用户输入的数据分别确定棋盘的大小和棋子的数量,所以棋盘大小和棋子数量是不确定的。为了避免存储空间的浪费,防止因空间不足造成的数据丢失,本案例可动态的申请堆上的空间,来原创 2021-08-27 10:24:55 · 2587 阅读 · 2 评论