- 博客(35)
- 收藏
- 关注
原创 基础算法--高精度数据(1)
高精度数据处理一般内容简单,写代码难度较大,可能部分内容涉及基础数学、初等数论等知识。请小心食用。不过本节不会给大家太难的高精度处理,我们第一次接触,不能劝退大家对吧。高精度算法是指,利用基础或高级的数学计算原理,来解决题目给出的数据量超出计算机正常存储范围的数据的一个方式。例如:你知道了用数组元素存储数位;你知道了朴实无华的运算规律/方法;你知道了完成一道题的分析步骤;你初步知道如何处理高精度数据了......只要你认真看完了,思考了学会了,你收获的远不止这些。哪里不懂,尽管留言,我看到就回复你。
2024-08-24 01:07:26
390
原创 C++中const的用法
const 我们都见过,但是今天,我们会从头开始重新再说const的所有用法。cosnt的所有用法基本都在了,可以说是相当全的了。建议收藏,哈哈,当然有更全的也可以在评论区留个言,那什么,我也是需要学习的,与诸君共勉 (^_^)!
2024-08-23 11:14:29
645
原创 基础算法--前缀和
前缀和算法是一种用空间换事件的算法,常用于解决某些题目或作为高级算法的组成部分。它可以用于快速计算数组元素之和,通过预先计算数组中每个位置前所有元素的累加和,将这些部分和存储在一个新数组中,从而在需要计算某个区间的和时,可以通过简单的减法操作得到结果,而不必重新遍历整个区间。
2024-08-20 15:23:24
910
原创 C++入门day2-面向对象编程(上)
面向对象基础理论、抽象、封装、继承、多态;访问权限修饰符;类与对象;成员;构造函数、析构函数、深浅拷贝、this指针、对象成员、抽象类、接口、工具类、友元。
2024-08-19 23:08:09
962
原创 排序算法--归并排序
合并的步骤:先申请两个数组合并后那么大小的空间,然后将两个排好序的数组逐一进行比较,往申请空间里面放。第二步:将两两有序的数组进行合并,将两个有序的数组合并成一个有序数组。重复第二步,直至排序完成。第一步:将数组进行分解,当分解成单个元素为一组的时候,才是组内有序的。归并排序的思想:将两个有序的数组合并成一个有序的数组。
2024-08-15 21:34:12
305
原创 C++入门Day1
引用类型: 引用:给变量起别名 语法:数据类型 &别名=原名引用特点: 必须初始化,且不能初始化为空 引用不能改变引用关系 //一旦初始化,不可再将这个别名赋给别的变量使用引用的底层: DataType* const p; //指针指向不可改变 即 引用关系不可改 //const修饰必须初始化 即 引用必须初始化
2024-08-15 11:32:21
372
原创 ASCII码对照表
常用 ASCII 码详细对照表 (0—255) 第 0~32 号及第 127 号(共 34 个)是控制字符或通讯专用字符,如控制符:LF (换行)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;通讯专用字符: SOH(文头)、EOT(文尾)、ACK(确认)等;第 33~126 号(共 94 个)是字符,其中第 48~57 号为 0~9 十个阿拉伯数字;65~90 号为 26 个大写英文字母,97~122 号为 26 个小写英文字母,其余为一些 标点符号、运算符号等。
2024-08-07 14:57:00
256
原创 排序算法--快速排序
对于快排而言,最优的情况就是,每次划分的都很均匀,假设要排序n个元素,第一次划分的时候,需要对整个数组扫描一下,做n次比较的时间为T(n)。最初要划分的土地尺寸为1680*640,而现在要划分的土地更小,为640*400.适用于这小块地的最大方块,也是适用于整块地的最大方块。如果子数组是有序的,就可以像下面这样合并并得到一个有序的数组:左边的数组+基准值+右边的数组。余下的这块土地,满足基线条件,因为160是80的整数倍2倍,将这两块土地划分为两个方块后,将不会余下任何土地。其实就是根本不需要排序的数组。
2024-08-07 14:36:16
685
原创 排序算法--堆排序
其实堆排序已经涉及到一个叫做“树”的数据结构了,它不同于链表、栈、队列等,它是一种非线性的数据结构。那么我们今天不说太多,后面自然会仔细讲解的,今天我们就学会一些基础的概念就行。
2024-08-04 09:20:06
1097
原创 排序算法--计数排序
计数排序是一种线性时间的排序算法,适用于整数或有限范围内的非负整数排序。它的核心思想是通过计数每个元素的出现次数来进行排序。计数排序不是比较排序,速度快于任何比较排序算法。但对于数据范围很大的数组,需要大量时间和内存。并且由于目前我们的机器的内存比较充足,为了提高机器的运行效率,就利用了空间换时间的思想。下面,我们详细说说计数排序的内容。
2024-07-30 22:49:11
551
原创 排序算法--冒泡与选择
排序算法有很多,在我们学习数组那一章节的时候,就给大家列过许多的排序代码。本节我们讲两个比较简单的排序算法:冒泡排序与选择排序。
2024-07-30 17:43:50
292
原创 查找算法--二分查找
对于查找功能,我们最简单的就是循环遍历,找到满足条件的结果就结束。假如有n个数据,我们要查的值为第n个的时候,我们需要执行循环n次才能找到。(即时间复杂度为:O(n));假如我们有一个有序整型数组,依次放入数据1、2、3...n,我们要找到中间的数据h(h
2024-07-30 15:19:25
1004
原创 STL标准模板库---容器篇(一)
对C风格字符串的封装,也是容器类的“先驱”类,也可以称为“实验品”,但这只是相对而言。字符串类string本身功能还是非常强大的。string str;//声明字符串变量//初始化字符串变量//使用重载后的操作符 + 连接两个字符串字符串类还提供了许多成员函数来操作字符串,以下是一些常用的成员函数:size():返回字符串的长度empty():检查字符串是否为空substr():获取子字符串find():查找子字符串在主字符串中的位置replace():替换字符串中的某些字符。
2024-07-24 20:03:15
1034
原创 项目实战--通讯录(动态顺序表)
本项目使用C++语言,有过C语言基础的小伙伴也都能看得懂。项目基于动态顺序表实现通讯录项目。项目需求:(1)能够保存用户信息:姓名、电话、性别、住址等(2)增加联系人信息(3)删除指定联系人(4)查找指定联系人(5)修改指定联系人(6)显示联系人信息。
2024-07-21 00:30:00
600
原创 《数据结构》--顺序表
C语言语法基础到数据结构与算法,前面已经掌握并具备了扎实的C语言基础,为什么要学习数据结构课程?--我们学完本章就可以实践一个:通讯录项目简单了解过后,通讯录具备增加、删除、修改、查找联系人等操作。要想实现通讯录项目必须有两个技术关键:(1)C语言语法基础(2)数据结构 之 顺序表/链表。
2024-07-20 11:57:09
876
原创 项目实战--C#实现图书馆信息管理系统
本项目是要开发一个图书馆管理系统,通过这个系统处理常见的图书馆业务。这个系统主要功能是:(1)有客户端(借阅者使用)和管理端(图书馆管理员和系统管理员使用)。(2)借阅者可以对于图书馆里面存在的图书进行借阅图书、归还图书等基本操作。(3)借阅者可以对于图书馆里面的图书的书号、种类、书名关键字等信息进行查询。(4)图书管理员能够查看借阅者的借阅图书、归还图书等的记录。(5)图书管理员能够对图书信息进行查看、增加、修改、删除功能。(6)图书管理员能够对读者信息进行查看、增加、修改、删除功能。(7)...
2024-07-20 00:09:35
891
1
原创 《数据结构》预备
位段的声明和结构体是类似的,有两个不同:1.位段的成员必须是int、unsigned int、 signed int,在C99中位段成员也可以选择其它类型。2.位段的成员后边有一个冒号和一个数字。int _b:5;int _c:10;int _d:30;A就是一个位段类型。那位段A所占内存的大小是多少呢?
2024-07-19 23:15:41
938
原创 C语言预处理详解
C语言设置了一些预定义符号,可以直接使用,预定义符号也是在预处理期间处理的。1.__FILE__ //进行编译的源文件2.__LINE__ //文件当前的行号3.__DATE__ //文件被编译的日期4.__TIME__ //文件被编译的时间5.__STDC__ //如果编译器遵循ANSI C,其值为1,否则未定义基本语法:举个例子:#define reg register //为 register这个关键字,创建⼀个简短的名字;
2024-06-28 14:33:46
985
原创 C语言编译与链接
在ANSI C的任何一种实现中,存在两个不同的环境。第一种是翻译环境,在这个环境中源代码被翻译成可执行的机器指令(二进制指令)第二种是执行环境,它用于执行代码
2024-06-27 09:59:01
1006
原创 VS调试技巧
当我们发现程序中存在的问题的时候,那下⼀步就是找到问题,并修复问题。这个找问题的过程叫称为调试,英⽂叫debug(消灭bug)的意思。调试⼀个程序,⾸先是承认出现了问题,然后通过各种⼿段去定位问题的位置,可能是逐过程的调 试,也可能是隔离和屏蔽代码的⽅式,找到问题所的位置,然后确定错误产生的原因,再修复代码,重新测试。
2024-06-26 17:00:00
933
原创 C语言的指针入门
在传参的时候,我们传值,那么在新的函数里就是简单的copy一下原来变量的值,内部交换,换完之后局部变量销毁,内存释放。上面两个结论非常重要,当变量和指针变量特别多的时候, 一定要搞清楚指针变量存储的是哪个变量的地址,该变量的地址存在了哪些指针变量里。不是的,我们学过函数了,都知道了形参改变不影响实参,那假如我们把实参的地址传过去,实参是不是就可以改变了。同时,指针变量也是一种特殊的变量,就是用于存储其他变量的地址的一个变量,它也有自己的地址。int 类型代表,该指针变量存储的地址是一个整型类型变量的地址。
2024-06-18 20:35:47
813
原创 C语言的操作符
1.操作符的分类2.二进制和进制转换3.原码、反码、补码4.移位操作符5.位操作符6.单目操作符7.逗号表达式8.下标访问[]、函数调用()9.结构成员访问操作符10.操作符的属性:优先级,结合性11.操作符优先级附录。
2024-06-17 21:00:00
909
原创 C语言的函数
定义形式:返回值类型 函数名(参数列表){函数体}举例:如下。但是切记没有多返回值类型函数,因为在函数栈帧问题上我们会了解到:我们只有一个eax寄存器,所以c语言的函数只能有一个返回值。//无参无返回值类型//有参无返回值类型ib?a:b);return m;
2024-06-16 11:30:00
624
原创 C语言的数组
定义:数组是一组相同类型元素的集合特点:所有数据元素类型相同、可以存储一个及以上的同类型元素要素:数组名,集合类型,下标。*定义方式:类型说明符 数组名[整型常量表达式];*说明:命名规则、数组长度、下标、数组类型数组的命名规则和变量的命名类似,在此基础上加上[常量值]即可,[]是一种操作符,叫做下标引用操作符,用来访问数组元素的。数组是一种特殊的变量,它也是有类型的,例如int arr[10]的数据类型就是int [10]。//10//用数组求斐波那契数列前四十项int main()
2024-06-15 05:00:00
672
原创 项目实战--扫雷C语言版
本节实战旨在激发大家学习兴趣,本节主要使用了数组和函数的知识,要想开发自己的扫雷小游戏,下两节可要好好听哦。本文需要建立的文件预览。
2024-06-14 13:28:21
380
原创 C语言的循环语句
循环的意义所在,就是减少重复代码的编写,使代码的可读性提高。例如:向屏幕依次打印1到100,如果写一百行代码,太麻烦了。那么我们用while循环语句来实现这个功能就非常简便了。下面,上代码。下面介绍两个关键字continue 和 break这里我们没有直接将i赋值为1.而是从0开始,但我们还想打印1到100,怎么办,那就加一条作为判断的语句,i的值如果比1小,我们就 让加1,然后continue 跳过本次循环直到i加到1时正常参与循环的打印功能。
2024-04-14 19:48:21
589
1
原创 MySQL基础篇
sql语句支持单行或多行书写,以分号结尾*sql语句支持空格或缩进来增强可读性*MySQL数据库的sql语句不区分大小写,建议关键字使用大写*单行注释(--注释内容)(#注释内容,MySQL特有注释方法)多行注释(/*注释内容*/)
2024-03-27 20:09:00
753
原创 C语言的选择语句
显而易见嘛,如果表达式1不成立,那就看看表达式2成不成立,如果还不成立就再看表达式2,实在不行再往下看,总有一句能成立,实在成立不了,别着急,那不还有else收尾呢嘛。(强调一下哦,博主总让大家去看别的文章,不是博主懒,是想要告诉大家一个道理:要想学习计算机,学编程,那就要学会如何利用更多的资源去丰富自己,只有在对比与思考中才能总结出自己的东西)。聪明的人已经看出来了,第一段和第三段是一样的,而不是第二段,这就是{}的省略原则,未加{}时,实际效果等同于仅括住:if之后,第一个分号之前的内容。
2024-03-21 20:51:06
1856
2
原创 C语言的入门学习(下)
首先,代码一方面是给自己看的,对于一个工程量庞大的程序来讲,注释可以让自己更清晰的理解并记忆代码的意义,或者之后自己回顾代码时,注释可以快速帮助你回忆起来;其次,代码在另一方面上也需要给其他人看,一个好的程序一定有必要的注释,帮助他人快速理解你的想法,有助于与他人专业知识及编程思路的交流。而if else常搭配使用,当然if也可以单独使用,这就是典型的单分支语句,后面再讲,今天主打一个了解认识,后面忘了也可以再过来看看。第一种,单行注释,也是最常用的一种注释方式,用于解释代码语句的作用,思路。
2024-03-18 22:47:06
758
原创 C语言的入门学习(上)
程序进行预处理,将函数库引进程序(不然运用里面的函数时计算机不认识就会报错)。定义一个函数(具体功能自行补充,此处是两数相加),但此时并未运行。从main函数处进入实际执行,第一步:打印一个东西,什么东西?add(1,2),此时调用了add函数,执行add函数内部代码,其中x成为了1,y成为了2,1+2=3,return将其后的运算结果3返回,存到了给它占好的位置上了。通过printf函数就将这个东西打印出来了。下面让我们看一下运行结果。本节课我们主要了解了一下:函数(主函数 库函数 自定义函数);
2023-10-24 17:13:17
84
实践项目-图书馆管理系统(C#.NET)
2024-06-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人