u011870022的博客

私信 关注
陌意随影
码龄8年

软件工程技术男

  • 34,405
    被访问量
  • 92
    原创文章
  • 84,341
    作者排名
  • 50
    粉丝数量
  • 毕业院校 武汉理工大学
  • 于 2013-08-29 加入CSDN
获得成就
  • 获得47次点赞
  • 内容获得37次评论
  • 获得158次收藏
荣誉勋章
兴趣领域
  • #算法
    #排序算法
TA的专栏
  • mysql
    5篇
  • Hadoop学习
  • Spring学习
    10篇
  • JAVA技术文档
    5篇
  • MySql数据库实验
    13篇
  • 信息安全
    1篇
  • mybatis学习
    12篇
  • Java实验
    4篇
  • UML建模
    3篇
  • 实验
  • 操作系统
    1篇
  • Python
    5篇
  • 随笔
    1篇
  • web
    1篇
  • 数值分析
    10篇
  • 汇编学习
    2篇
  • 数据结构和算法
    12篇
  • c++技术文档
    4篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

MySQL数据库入门学习(五)——使用工具类封装JDBC实现MySQL的查询操作

MySQL数据库入门学习(五)——使用工具类封装JDBC实现MySQL的查询操作1.前言我们知道,事实上,MySQL的 “增删查改”其实就是分为两类,一类是更新操作:int executeUpdate(String sql)包括了插入(insert),更新(update),删除(delete);另外一类是查询操作(select),由ResultSet executeQuery(String sql) 或者 ResultSet executeQuery() 实现。在上篇文章:MySQL数
原创
6阅读
0评论
0点赞
发布博客于 10 天前

Docker环境下使用CentOS7.8配置Hadoop3.3.0完全分布式集群环境

Docker环境下使用CentOS7.8配置Hadoop3.3.0完全分布式集群环境1.首先拉取CentOS7.8镜像(笔者之前使用CentOS8进行安装但是CentOS8无法正常安装OpenSSH,折腾了好久后才使用CentOS7进行安装后可以正常安装OpenSSH)docker pull centos:centos7.8.20032.创建固定IP子网按照集群的架构,创建容器时需要设置固定IP,所以先要在docker使用如下命令创建固定IP的子网.至于在Docker下的网络模式可以参考博客D
原创
55阅读
0评论
0点赞
发布博客于 1 月前

MYSQL学习与数据库综合实验(十二)——自主存取控制实验(基于Ubuntu18.04中Docker安装的MySQL8实验)

MYSQL学习与数据库综合实验(十)——自主存取控制实验(基于Ubuntu18.04中Docker安装的MySQL8实验)12.1MySQL的权限用户连接到MySQL,可以做各种查询,这都是MySQL用户与权限功能在背后维持着操作。用户与数据库服务器交互数据,分为两个阶段:(1)你有没有权连接上来(2)你有没有权执行本操作12.1.1你有没有权连接上来服务器如何判断用户有没有权连接上来?依据:1)你从哪里来?host2)你是谁?user3)你的密码是多少?password用户的这
原创
135阅读
1评论
0点赞
发布博客于 2 月前

MySQL创建用户时提示“Operation CREATE USER failed for XXX”的解决办法

本人在进行数据库综合实验时候,想创建一个user用户,遇到该问题报错:经过一段时间的排查发现,出现该原因的结果是之前使用了delete from mysql.user where user ='user_1';的语句删除用户,即使你刷新了 flush privileges;也没用。删除用户需要使用drop user 用户然后重新进行创建就好了:create user 'user_1'@'%' identified by '123456';...
原创
436阅读
1评论
2点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(十 一)—— 客户端工具备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)

11. 客户端工具备份与恢复实验该实验衔接上一次实验:MYSQL学习与数据库综合实验(十)——语句备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)11.1使用mysqldump命令备份DBEM数据库中的salary表将数据库dbms中的salary表备份到当前所在目录中(你所在文件夹下使用指令的地方)backup文件夹下的salary.sql文件中。mysqldump -h localhost -P 3307 -u root -p dbms salary > b
原创
58阅读
1评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(十)——语句备份与恢复实验

MYSQL学习与数据库综合实验(十)——语句备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)10.SQL语句备份与恢复实验​ 数据库的主要作用就是对数据进行保存和维护,所以备份数据是数据库管理中最常用的操作。为了防止数据库意外崩溃或硬件损伤而导致的数据丢失,数据库系统提供了备份和恢复策略。保证数据安全的最重要的一个措施就是定期的对数据库进行备份。这样即使发生了意外,也会把损失降到最低。数据库备份是指通过导出数据或者复制表文件的方式来制作数据库的副本。当数据库出现故障或
原创
202阅读
1评论
0点赞
发布博客于 2 月前

信息摘要函数(Hash函数)的设计与性质验证

1.信息摘要函数(Hash函数)的设计与性质验证实验2.实验目的:信息摘要函数(Hash函数)的设计与性质验证。2.1实验设备:PC机 一台/人2.2实验原理:2.2.1.信息摘要函数具有固定的输出数位。2.2.1信息摘要函数满足不可求逆,不可伪造和在可行时间之内找不到碰撞等特性。3.实验内容及注意事项:信息摘要函数的设计与Hash值的性质验证实验步骤:3.1设计符合原理要求的信息摘要函数H(m)。3.2对于如下明文信息m:There was a grocery shop in a t
原创
1968阅读
4评论
1点赞
发布博客于 2 月前

C++实现MD5摘要算法加盐salt值

C++实现MD5摘要算法加盐salt值1.信息摘要函数1.1Hash函数哈希函数就是能将任意长度的数据映射为固定长度的数据的函数。哈希函数返回的值被叫做哈希值、哈希码、散列,或者直接叫做哈希。1.2消息摘要将长度不固定的消息(message)作为输入参数,运行特定的Hash函数,生成固定长度的输出,这个输出就是Hash,也称为这个消息的消息摘要(Message Digest)1.3信息摘要算法是hash算法的一种,具有以下特点:①无论输入的消息有多长,计算出来的消息摘要的长度总是固定的
原创
163阅读
0评论
2点赞
发布博客于 2 月前

Mybatis-plus学习(七)——MybatiPlus的代码生成器

7.代码生成器AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。特别说明:自定义模板有哪些可用参数?Github Gitee AbstractTemplateEngine 类中方法 getObjectMap 返回 objectMap 的所有值都可用。package com.moyisuiying.bo
原创
64阅读
0评论
0点赞
发布博客于 2 月前

Mybatis-plus学习(六)——MybatiPlus的乐观锁和自动填充功能详解

7.乐观锁7.1OptimisticLockerInnerInterceptor当要更新一条记录的时候,希望这条记录没有被别人更新乐观锁实现方式:取出记录时,获取当前version更新时,带上这个version执行更新时, set version = newVersion where version = oldVersion如果version不对,就更新失败7.2使用方法字段上加上@Version注解@Versionprivate Integer version;说明:
原创
85阅读
0评论
0点赞
发布博客于 2 月前

Mybatis-plus学习(五)——MybatiPlus的自定义ID生成器和逻辑删除详解测试

5.自定义ID生成器自mybatis-plus3.3.0开始,默认使用雪花算法+UUID(不含中划线)5.1雪花算法snowflake是Twitter开源的分布式ID生成算法,结果是一个long型的ID。其核心思想是:使用41bit作为毫秒数,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生 4096 个 ID),最后还有一个符号位,永远是0。可以保证几乎全球唯一!5.2配置主键自增5.3在数据库中配置主
原创
251阅读
0评论
0点赞
发布博客于 2 月前

Mybatis-plus学习(四)——MybatiPlus的Wrapper的使用

4Wrapper的使用4.1Wrapper的类图体系4.2wapper介绍Wrapper : 条件构造抽象类,最顶端父类,抽象类中提供4个方法西面贴源码展示AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件AbstractLambdaWrapper : Lambda 语法使用 Wrapper统一处理解析 lambda 获取 column。LambdaQueryWrapper :看名称也能明白就是用于Lambda语法使用的查询Wrapper
原创
199阅读
0评论
0点赞
发布博客于 2 月前

Mybatis-plus学习(三)——MybatiPlus的分页插件PaginationInnerInterceptor详解以及测试

3.分页插件(PaginationInnerInterceptor)3.1属性介绍属性名类型默认值描述overflowbooleanfalse溢出总页数后是否进行处理(默认不处理,参见 插件#continuePage 方法)maxLimitLong单页分页条数限制(默认无限制,参见 插件#handlerLimit 方法)dbTypeDbType数据库类型(根据类型获取应使用的分页方言,参见 插件#findIDialect 方法)dialect
原创
825阅读
0评论
0点赞
发布博客于 2 月前

Mybatis-plus学习(二)——MybatiPlus的BaseMapper和IService详解以及自定义实现

Mybatis-plus学习(二)——MybatiPlus的BaseMapper和IService详解以及自定义实现2.使用BaseMapper以及了解其原理2.1查看BaseMapper的源码AccountDao.java接口继承于mybatis-plus提供的BaseMapper.java接口,而BaseMapper.java接口继承于Mapper.java接口。我们首先看Mapper.java接口里面的方法:** * 顶级Mapper * * @author nieqiurong 201
原创
786阅读
0评论
1点赞
发布博客于 2 月前

Mybatis-plus学习(一)——Springboot整合MybatiPlus

1.初步认识1.1简介Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。这是官方给的定义,关于mybatis-plus的更多介绍及特性,可以参考mybatis-plus官网。那么它是怎么增强的呢?其实就是它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行,就类似于JPA。1.2.特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本
原创
25阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(六)——实体完整性实验

6.实体完整性实验6.1定义**实体完整性:**是指保证表中所有的行唯一。实体完整性要求表中的所有行都有一个唯一标识符。这个唯一标识符可能是一列,也可能是几列的组合,称为主键。也就是说,表中的主键在所有行上必须取唯一值。强制实体完整性的方法有:索引、UNIQUE约束、PRIMARY KEY约束或IDENTITY属性。​ 如:student表中sno(学号)的取值必须唯一,它唯一标识了相应记录所代表的学生,学号重复是非法的。学生的姓名不能作为主键,因为完全可能存在两个学生同名同姓的情况。6.2创建
原创
77阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(五)——索引实验

5.索引实验5.1索引的定义​ 索引是一种特殊的数据库结构,由数据表中的一列或多列组合而成,可以用来快速查询数据表中有某一特定值的记录。​ 通过索引,查询数据时不用读完记录的所有信息,而只是查询索引列。否则,数据库系统将读取每条记录的所有信息进行匹配。​ 可以把索引比作新华字典的音序表。例如,要查“库”字,如果不使用音序,就需要从字典的 400 页中逐页来找。但是,如果提取拼音出来,构成音序表,就只需要从 10 多页的音序表中直接查找。这样就可以大大节省时间。 因此,使用索引可以很大程度上提高数
原创
249阅读
2评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(八)——存储过程实验

8.存储过程实验8.1存储过程定义存储过程是一组为了完成特定功能的 SQL 语句集合。使用存储过程的目的是将常用或复杂的工作预先用 SQL 语句写好并用一个指定名称存储起来,这个过程经编译和优化后存储在数据库服务器中,因此称为存储过程。当以后需要数据库提供与已定义好的存储过程的功能相同的服务时,只需调用“CALL存储过程名字”即可自动完成。8.2存储过程的优点1) 封装性通常完成一个逻辑功能需要多条 SQL 语句,而且各个语句之间很可能传递参数,所以,编写逻辑功能相对来说稍微复杂些,而存储过程
原创
401阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(九)——触发器

9触发器9.1触发器是什么MySQL 的触发器和存储过程一样,都是嵌入到 MySQL 中的一段程序,是 MySQL 中管理数据的有力工具。不同的是执行存储过程要使用 CALL 语句来调用,而触发器的执行不需要使用 CALL 语句来调用,也不需要手工启动,而是通过对数据表的相关操作来触发、激活从而实现执行。比如当对 student 表进行操作(INSERT,DELETE 或 UPDATE)时就会激活它执行。触发器与数据表关系密切,主要用于保护表中的数据。特别是当有多个表具有一定的相互联系的时候,触发
原创
218阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(七)——参照性完整实验

7.参照性完整实验7.1语法7.1.1创建表时定义参照完整性7.1.1.1列级参照完整性列定义时加上关键字 REFERENCES ref_table_name(ref_key)7.1.1.2表级参照完整性7.1.1.2.1表定义时,在语句最后加上CONSTRAINT ref_key_name FOREIGN KEY (ref_key) REFERENCES ref_table_name(ref_key)7.1.2创建表后定义参照完整性使用ALTER TABLE命令7.1.3参照性定义
原创
111阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(四)——视图实验

4.视图实验4.1视图的定义​ MySQL 视图(View)是一种虚拟存在的表,同真实表一样,视图也由列和行构成,但视图并不实际存在于数据库中。行和列的数据来自于定义视图的查询中所使用的表,并且还是在使用视图时动态生成的。数据库中只存放了视图的定义,并没有存放视图中的数据,这些数据都存放在定义视图查询所引用的真实表中。​ 使用视图查询数据时,数据库会从真实表中取出对应的数据。因此,视图中的数据是依赖于真实表中的数据的。一旦真实表中的数据发生改变,显示在视图中的数据也会发生改变。视图可以从原有的表上
原创
78阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(三)——数据查询实验

3 数据查询实验3.1单表查询3.1.1Select 语句,SQL核心,语法格式如下:SELECT [ALL | DISTINCT | DISTINCTROW ][HIGH_PRIORITY]… 列名表达式 …[FROM table_reference ... ] /*FROM子句*/[WHERE 条件] /*WHERE子句*/[GROUP BY {列名| 表达式 | position} [ASC | DESC], ... [WITH ROLLUP]] /*GR
原创
234阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(二)—— 数据更新实验

MYSQL学习与实验(二)—— 数据更新实验2.1数据更新实验2.1.1创建一个测试表test用于测试:create table if not exists test ( id int(8) primary key auto_increment,name varchar(20) not null,price float,gender tinyint(1) default 0,age int(3),birth date );2.1.2向test表中插入数据2.1.2.1插入单条数据INSERT
原创
280阅读
0评论
0点赞
发布博客于 2 月前

MYSQL学习与数据库综合实验(一)——数据库定义与操作

MYSQL学习与实验(一)——数据库定义与操作1.1创建数据库语句CREATE DATABASE [IF NOT EXISTS] 数据库名 [选项...];这里创建一个DBMS的数据库 create database if not exists DBMS character set gbk;这里使用了if not exists 这个条件,意思是如果不存在该数据库则创建,如果已经存在了则不创建。比如这个DBMS数据库已经被创建,这时候就不会重复创建这个数据库,如果不使用这个if not ex
原创
124阅读
0评论
0点赞
发布博客于 2 月前

UP 的阶段,用例和使用场景之间是什么关系以及和协作之间的关系,软件开发过程中使用 UML 的必要性以及好处,寻找概念类的三种策略

UP 的阶段,用例和使用场景之间是什么关系以及和协作之间的关系,软件开发过程中使用 UML 的必要性以及好处1.什么是 UP 的阶段?1) 初始:大体上的构想、业务案例、范围和模糊评估;2) 细化:已精化的构想、核心架构的迭代实现、高风险的解决、确定大多数需求和范围以及进行更为实际的评估;3) 构造:对遗留下来的风险较低和比较简单的元素进行迭代实现,准备部署;4) 移交:进行 beta 测试和部署。2.用例和使用场景之间是什么关系?与协作又是什么关系?用例就是一组相关的成功和失败场景集合,用
原创
137阅读
0评论
0点赞
发布博客于 3 月前

UML构造型的作用,主动类的概念,敏捷开发的含义,对象图的适用场景以及它的优缺点

UML构造型的作用,主动类的概念,敏捷开发的含义,对象图的适用场景以及它的优缺点1.构造型的作用是什么?构造型用来定义一些特定于某个领域或某个系统的构造块。用来扩展建模元素,增加建模元素的语义。构造型表示对现有建模概念的精化,并且定义在UML 的简档之中。简档是一组相关构造型、标记和约束的集合,其目的是使用 UML 专用于特定领域或平台。UML 预定义了大量构造型,同时允许用户自行定义构造型,因此,在 UML 中构造型提供了扩展机制。2.请简要解释主动类的概念,并说明它建模的意义主动对象运行于自己控
原创
274阅读
0评论
0点赞
发布博客于 3 月前

UML 的三个主要的特性,是否是方法论,三种方式以及三种透视图

UML 的三个主要的特性,是否是方法论以及三种方式1. UML 的三个主要的特性。1) UML 是一种可视化语言;2) UML 用于建模;3) UML 是一种统一的标准。2.UML 是一种方法论吗?并简要说明理由。UML 并不是 OOA/D,也不是方法论,它只是图形表示法,是一种描述模型的标准语言, 虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。3.应用 UML 的三种方式是什么?UML 作为草图,用于探讨问题或解决方案空间的复杂部分;UML 作为蓝图,相对详细的
原创
115阅读
0评论
0点赞
发布博客于 3 月前

MySQL数据库入门学习(四)——使用工具类封装JDBC实现MySQL的更新操作

MySQL数据库入门学习(四)——使用工具类封装JDBC实现MySQL的更新操作1.前言我们知道,事实上,MySQL的 “增删查改”其实就是分为两类,一类是更新操作:int executeUpdate(String sql)包括了插入(insert),更新(update),删除(delete);另外一类是查询操作(select),由ResultSet executeQuery(String sql) 实现。观察数据库更新操作时的代码:/** * @param book 需要保存的对象
原创
82阅读
0评论
0点赞
发布博客于 4 月前

MySQL数据库入门学习(三)——使用工具类封装JDBC实现对数据库的连接

MySQL数据库入门学习(三)——使用工具类封装JDBC实现对数据库的连接1.前言回顾在对MySQL数据库进行操作之前,我们首先通过JDBC获取Connection对象,在这个过程中,我们首先要加载MySQL数据库驱动,然后才能通过 DriverManager.getConnection(url,user,password)创建一个连接Connection对象。我们首先观察JDBC中对数据库进行增删查改操作的代码(这里只列出了更新update和查询select)的代码://拼接需要执行的更新sql语句
原创
37阅读
0评论
0点赞
发布博客于 4 月前

MySQL数据库入门学习(二)——使用JDBC实现对数据库的删查改功能

MySQL数据库入门学习(二)——使用JDBC实现对数据库的删查改功能1.前言在上篇文章中已经建立了数据库和表,并且使用JDBC连接了数据库实现了向数据库中插入数据的功能:详情请看:MySQL数据库入门学习(一)——创建数据库并Java实现JDBC连接数据库后添加数据2.MySQL的增删除该常用的Statement方法:1,boolean execute 允许执行查询语句、更新语句、DDL语句返回值为true时,表示执行的是查询语句,可以通过getResultSet方法获取结果;返回值为fals
原创
66阅读
0评论
0点赞
发布博客于 4 月前

MySQL数据库入门学习(一)——创建数据库并Java实现JDBC连接数据库后添加数据

MySQL数据库入门学习(一)——创建数据库并Java实现JDBC连接数据库后添加数据1.MySQL简介:MySQL是一种DBMS,而且是一种一个小型的开源的关系型数据库管理系统。2008年1月16日MySQL AB被Sun公司收购。而2009年,SUN又被Oracle收购。就这样如同一个轮回,MySQL成为了Oracle公司的另一个数据库项目。MySQL它在世界范围内得到了广泛的安装和使用,应该是使用人数最多的数据库软件了,因为它有着这样的特性:成本——MySQL是开源软件,可以免费使用和修改。
原创
211阅读
0评论
2点赞
发布博客于 4 月前

使用swing实现求和以及均值(有按钮和无按钮两份代码以及详细注释)——Java语言程序设计

Java语言程序设计–实验2:文本框、文本区和布局的设计目的:通过编写一个Java GUI应用程序,进一步熟悉Java GUI应用程序的结构和开发过程;熟悉窗口、组件的创建、布局管理器的使用以及事件处理机制。题目:根据教材关于Java GUI的介绍,编写一个具有如上基本布局的应用程序,要求当在上面的文本区中输入若干数后(输入的多个数据之间以逗号分隔),并点击按钮,就可以在下面的文本框中分别显示出输入数据的“和”以及“平均数”。在完成上述要求的情况下,考虑改进该应用程序,从界面上去掉按钮,并且随
原创
263阅读
14评论
1点赞
发布博客于 4 月前

Java语言程序设计D实验——类与对象实验

Java语言程序设计D实验——类与对象实验一、实验内容描述(问题域描述)【实验题目】类与对象【实验目的】使用类来封装对象的属性和功能;掌握类变量与实例变量,以及类方法与实例方法的区别;掌握使用package和import语句。【实验内容】编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。至少要实现如下基本要求:a) Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以
原创
145阅读
0评论
0点赞
发布博客于 4 月前

Java程序设计语言D实验二——Java的数组实验

一、实验内容描述(问题域描述)【实验题目】Java的数组【实验目的】熟练掌握java的一维、多维数组的使用。【实验内容】(1)编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出。(2)找出一个二维数组的鞍点,即该位置上的元素在该行上最大,在该列上最小(注:一个二维数组也可能没有这样的鞍点)。(3)编程输出杨辉三角的前10行。二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑
原创
116阅读
0评论
0点赞
发布博客于 4 月前

JAVA语言程序设计D第一次实验内容:JDK安装与配置、简单的程序编写

JAVA语言程序设计D第一次实验内容:JDK安装与配置、简单的程序编写一、实验内容描述(问题域描述)第一次实验内容:【实验题目】JDK安装与配置、简单的程序编写【实验目的】熟悉JDK的安装、配置和使用,掌握Java Application程序的基本结构。【实验内容】(1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量。(2)编写一个打印出”HelloWorld”的Java Application程序,并编译运行。二、实验基本原理与设计(包括实验方案设计,实验手
原创
63阅读
0评论
0点赞
发布博客于 4 月前

软件工程大作业-腾讯雨课堂升级版-需求分析

目录 1 引言 4 1.1 背景 4 1.2文档目的 5 1.3预期的用户 5 1.4参考文献 5 2 综合描述 6 2.1 用户角色权限 6 2.1.1 用户权限 6 2.2用户角色类型和特征 7 2.4系统运行环境 7 3 系统功能需求 8 3.1 产品功能结构图 9 3.2 产品信息结构图 11 3.3 开发进度安排 12 4 模块详细需求 12 4.1 注册登录模块 12 4.2 课堂会议模块 14 4.3 个人信息模块 20 4.4学习讨论区模块 22 4.5其它模块 24 4.6通知模块 25 4.7系统完整的用例图 27
docm
发布资源于 4 月前

内核定时器——操作系统课程设计

内核定时器1.设计题目与要求1.1设计题目:内核定时器1.2设计要求:2.总的设计思想及系统平台、语言、工具2.1 设计思想:2.1.1Linux内核的描述2.1.2Linux 内核定时器2.1.3多线程2.1.4动态内核定时器机制的原理2.1.5 内核动态定时器机制的实现2.1.6 Linux 信号signal处理机制2.1.7测量一个多线程程序的执行时间的设计原理2.2 系统平台:2.3 编程工具:3.数据结构与模块说明(功能与流程图)3.1本程序的基本数据结构:3.1.1 timeval结构体,位于C
原创
167阅读
1评论
1点赞
发布博客于 4 月前

Python的web框架Flask入门学习

web框架Flask1.1Flask简介​ Flask是一个用Python编写的Web应用程序框架。 它由 Armin Ronacher 开发,他领导一个名为Pocco的国际Python爱好者团队。 Flask基于Werkzeug WSGI工具包和Jinja2模板引擎。两者都是Pocco项目。1.2Flask 环境安装​ 安装Flask通常需要Python 2.6或更高版本。虽然Flask及其依赖项适用于Python 3(Python 3.3以上版本),但是许多Flask扩展不能正确支持它。因此
原创
64阅读
1评论
0点赞
发布博客于 4 月前

Pycharm中Flask的调试模式

1.Flask的调试模式​ 通过调用run()方法启动Flask应用程序。但是,当应用程序正在开发中时,应该为代码中的每个更改手动重新启动它。为避免这种不便,请启用调试支持。如果代码更改,服务器将自行重新加载。它还将提供一个有用的调试器来跟踪应用程序中的错误(如果有的话)。在运行或将调试参数传递给run()方法之前,通过将application对象的debug属性设置为True来启用Debug模式。app.debug = Trueapp.run(debug = True)但是在pycharm编译器
原创
438阅读
0评论
1点赞
发布博客于 4 月前

Flask解决跨域请求问题

笔者在Python爬虫爬取职位信息的过程中,使用的web框架为flask,在实验过程中发现请求已经返回成功,但是却无法在页面中显示出结果通过浏览器的控制台发现是因为由于出现了由于跨域请求安全问题导致被浏览器拦截了。跨域请求原理:​ 在 HTML 中,<a>, <form>, <img>, <script>, <iframe>, <link> 等标签以及 Ajax 都可以指向一个资源地址,而所谓的跨域请求就是指:当
原创
202阅读
2评论
0点赞
发布博客于 4 月前

使用json库将对象转化为json字符串出错的原因以及解决办法

1. 在使用json库的dumps()函数将对象JobInfo转换为json字符串返回前端页面的过程中,出现了导致无法正常将对象JobInfo转换为json对象。这是因为我们自定义的对象 所以需要经过“字典化”将对象的属性转化为 “key”:value的形式一一对应。我们可以使用自定义的格式化方法,也可以直接使用Python提供的字典化函数obj__dict__其中obj为我们要格式化的对象。在此次实验过程中obj为一个自定义的JobInfo对象:class JobInfo: def _
原创
67阅读
0评论
0点赞
发布博客于 4 月前

Python实现“求职APP网络爬虫”

1.实验教学目的与要求随着社会经济的迅速发展,越来越多的社会岗位供招聘者选择,如何快速有效的提升自己在意向工作上的技能是我们找到满意工作的第一步。 网络爬出作为一种自动从海量数据中筛选并提出有效信息的工具,可以帮助我们从开放域中汲取所求。本实验通过一个具体的爬虫例子,要求学生自己动手编写代码,挖掘目标信息,并且对信息进行分析利用。通过工程实践加深对理论知识的深入理解和综合应用,进一步提高实际动手能力。要求学生在上机前应认真做好各种准备工作,包括 python 环境以及相关依赖包的安装及基本操作的熟悉,熟
原创
180阅读
0评论
0点赞
发布博客于 4 月前

《人人都是产品经理》读后感

读完《人人都是产品经理》后,受益匪浅。这本书在结构排版上分为六章,从零基础开始引导读者开始了解产品经理的起源,定义,职责作用以及如何一步步成为一个合格的产品经理然后再进行自我提升,并且以他在阿里巴巴的工作经历—从系统需求分析师到产品经理这段时间内做过的项目来讲解一些关于项目需求,项目管理,项目开发中遇到的一些问题以及在项目进行过程中遇到的问题,设立一个比较清晰的场景,让读者能够清晰地了解到这个问题的缘由以及解决的办法。 相比其它同类的书籍,《人人都是产品经理》这本书中并没有将那些很高深晦涩难懂的专业词汇直接
原创
54阅读
0评论
0点赞
发布博客于 4 月前

datatable中报错 table.XXX is not a function的解决方法

在datatable中可以通过三种不同的方式为一个或多个表获取一个新的Datatables API实例:(1)$ ( selector ).DataTable();(2)$ ( selector ).dataTable().api();(3)new $ .fn.dataTable.Api( selector );每种方式的结果都是Datatables API对象的一个实例,该实例具有选择器在其上下文中找到的表。请务必注意$ ( selector ).DataTable();和$ ( selector
原创
357阅读
0评论
0点赞
发布博客于 5 月前

详解SSM环境的搭建(下)

在上一篇博客中详解SSM环境的搭建(上),我也经搭建好了是SSM的基本框架,并进行了简单的测试。但是并没有给MySQL添加事务管理以及并没有测试数据库的增删查改功能。接下来便继续详细进行各个功能的测试。1.添加新的依赖 <!-- 引入aop依赖 --> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver&l
原创
32阅读
0评论
0点赞
发布博客于 6 月前

详解SSM环境的搭建(上)

1.简介SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。  Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。  Spring的核心思想是IoC(控制反转),即不再需要程序员去显式地new一个对象,而是让Spring框架帮你来完成这一切。  Sprin
原创
63阅读
0评论
0点赞
发布博客于 6 月前

Spring是用注解和XML结合的方式配置事务并实现简单的增删查改功能以及模拟转账功能

1.XML配置虽然比较复杂但是更加灵活,而注解配置虽然比价简单,但是灵活性不够,在实际的开发项目中我们更加倾向于是用注解和XML配置相结合的方式进行对项目的配置。之前笔者分别是用纯XML进行配置Spring的事务使用Spring的事务管理器配置数据库的事务和Spring使用纯注解配置事务管理并实现简单的增删查改以及模拟转账功能,这两种方式都能够实现对Spring事务的控制,不过两者均存在着一定的优缺点,所以两者结合起来更加简单灵活。2.搭建项目。2.1创建数据库以及数据表Account。create
原创
77阅读
0评论
0点赞
发布博客于 6 月前

Spring使用纯注解配置事务管理并实现简单的增删查改以及模拟转账功能

在之前的文章,笔者已经使用XML配置实现了对MySQL的事务管理使用Spring的事务管理器配置数据库的事务,Spring也支持使用注解进行配置从而实现对事务的管理,此次便详细说明如何使用注解配置实现Spring事务的管理。1.首先建立实验测试环境1.1创建数据库以及数据表Account。create database if not exists springdemo;use springdemo;create table if not exists Account(id int(4) auto
原创
113阅读
0评论
0点赞
发布博客于 6 月前

Spring注解引入配置文件properties报错: [xx.properties] is invalid

在Spring开发中,当我们使用纯注解开发的时候引入资源文件,比如数据库连接配置文件的时候启动项目时报错:八月 10, 2020 9:17:00 下午 org.springframework.context.support.AbstractApplicationContext refresh警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.be
原创
120阅读
0评论
0点赞
发布博客于 6 月前

使用Spring的事务管理器配置数据库的事务

之前的文章分别使用动态代理详解自定义Spring中MySQL数据库的事务以及使用aop配置实现自定义的MySQL事务管理,这两个都是使用了自己编写的事务管理器,可谓是“自己动手丰衣足食”。实际上,Spring框架本身就给我们提供了强大的事务管理器,可以不用我们自己手动写事务管理器就可以实现对数据库操作的事务管理。下面边开始实现对事务管理的配置:首先建立数据库以及用户表:create database if not exists springdemo;use springdemo;create ta
原创
67阅读
0评论
0点赞
发布博客于 6 月前

使用aop配置实现自定义的MySQL事务管理

在上一篇文章中我详解了如何在Spring中自定义实现事务的管理:详解自定义Spring中MySQL数据库的事务,里面使用了动态代理的方式实现了对AccountServiceImpl中的方法进行增强,从而实现了事务的管理。在Spring中,使用aop(面向切面编程)也可以配置实现对事务的管理,本质上来说AOP也是通过动态代理实现对某一个方法的增强。1.AOP的原理。为了让大家更好地理解AOP的概念,我特意找了篇详解的文章:细说Spring——AOP详解(AOP概览)在这篇博客中,博主详细介绍了AOP的概念以
原创
111阅读
0评论
0点赞
发布博客于 6 月前

详解自定义实现Spring中MySQL数据库的事务控制

1.在我们进行数据库操作时,为了存取数据的安全,需要进行事务支持,下面我们先看一下MySQL的事务:1.1MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你既需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!1.2在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。1.3事务用来
原创
139阅读
0评论
1点赞
发布博客于 6 月前

详解自定义的SpringMVC异常以及实现测试

我们在写web项目的时候,如果服务器yudaole
原创
23阅读
0评论
0点赞
发布博客于 6 月前

SpringMVC使用ajax详细实现MySQL数据库的增删查改功能

1.本次项目基于maven管理项目,采用SpringMVC框架,使用c3p0数据连接池以及MySQL数据库进行项目。2.项目的创建:首先创建一个maven工程:对项目的Tomcat进行配置:3.在pom.xml中引入项目的依赖文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001
原创
224阅读
0评论
2点赞
发布博客于 6 月前

基于注解配置的Mybatis的增删查改

1.在上篇博客中介绍了基于XML配置的Mybatis的增删查改的具体实现,此次便实现基于注解实现mybatis的增删查改功能。在上篇博客基于XML配置的Mybatis的增删查改的源码以及配置之下继续添加注解的实现。2.首先修改mybatis-config.xml配置文件,将UserDao的映射配置信息改为如下内容: <mappers> <!-- 指定Userdao的位置--><!-- 使用注解,指定UserDao的全限定类名 -->
原创
40阅读
0评论
0点赞
发布博客于 7 月前

Java通过反射获取方法的返回值的类型以及参数化的实际类型(下篇)

笔者最近在学习mybatis的框架,在写源码的时候遇到了一些关于通过反射获取返回值类型的实际参数类型的问题,并且已经写有一篇关于简单的返回值类型的获取,诸如public User getOne(int id);获取返回值的类型是User,public List< User > getAll();的返回值类型是List< User >,其参数化类型数组是 {User},也就是参数化类型是<> 里面包含的参数类型,比如public Map<String,Integer&
原创
443阅读
0评论
1点赞
发布博客于 7 月前

基于XML配置的Mybatis的增删查改

1.首先搭建mybatis的环境配置。1.1建立数据库和本次测试用的表User然后插入User信息。create database if not exists mybatisdemo;create table if not exists user(id int(4) auto_increment primary key,name varchar(16) not null,password varchar(16) not null,age int(3) ,createtime datetime de
原创
37阅读
0评论
0点赞
发布博客于 7 月前

自定义实现mybatis框架的简单实现-搭建注解开发

笔者在上篇博客中已经详细介绍了如何简单实现mybatis框架基于XML的实现,其博客地址为:自定义实现mybatis框架的简单实现-搭建XML开发下面继续实现自定义的mybatis搭建注解开发,在原来XML搭建的基础上继续实现。1.将mybatis-config.xml中的mappers标签改为:<mappers> <!-- 指定Userdao的位置,使用XML配置时使用resource标签--> <!--使用注解配置的时候使用class
原创
56阅读
0评论
0点赞
发布博客于 7 月前

Java通过反射获取方法的返回值的类型以及参数化的实际类型(上篇)

最近在学mybatis的时候,自己根据参考资料自定义了一个简单的mybatis框架,期望能够简单实现对数据库操作的增删查改功能。在自定义mybatis框架的过程中,在使用注解来进行配置sql语句时,就遇到了一些关于获取返回值类型的小问题。比如说方法 publIc User getOne(int id);的返回值类型是User;public List< User > getAll();的返回值类型是List< User >,但是我们在进行mybatis框架书的时候,通过注解配置时,我们
原创
1068阅读
0评论
1点赞
发布博客于 7 月前

自定义实现mybatis框架的简单实现-搭建XML开发

mybatis框架作为一个流行的和数据库打交道的持久层框架,在我们实际开发中运用广泛,其框架的设计思想值得我们这些新手学习。笔者近几天开始学习mybatis框架,便自己参照mybatis框架的源码以及其它一些相关文献,自定义实现一个简单的mybatis框架。下面便开始进入正题:1.我们在使用mybatis框架的时候,一般使用以下几个步骤: //读取配置文件 InputStream inputStream = Resources.getResourceAsSt
原创
52阅读
0评论
0点赞
发布博客于 7 月前

mybatis基于注解的环境搭建

1.创建maven工程,然后创建相应的目录如图:2.在pom.xml文件中导入项目依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache
原创
44阅读
0评论
0点赞
发布博客于 7 月前

mybatis基于XML的环境搭建

1.创建maven工程,然后创建相应的目录如图:2.在pom.xml文件中导入项目依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache
原创
39阅读
0评论
0点赞
发布博客于 7 月前

汇编实现凯撒加密和解密

1.题目:设计一个凯撒密码加密器,输入一串字符串(长度不超过20)以回车结束,之后再输入一个-8到8之间的整数X。(1)如果输入非数字,则通过输出提示;(2)如X=0,则输出该字符串本身;(3)如果0<X<=8,则对该字符串做凯撒加密,移动位数为X,之后将加密结果显示输出。(4)如果-8<=X<0,则对该字符串做凯撒解密,移动位数为X,之后将解密结果显示输出。(5)如果X>8或者X<-8,则退出到DOS系统。2.分析2.1凯撒密码加密解密器的原理凯撒加密
原创
352阅读
0评论
1点赞
发布博客于 7 月前

汇编实现一个0到9的整数输入

data segment num BYTE ? inputStr DB "please input a positive number:","$" ;定义提示输入的字符串 outStr DB "your input is:","$" ;定义输出的字符串 erroStr DB "erro input!","$" ;定义错误的字符串 CRLF DB 0AH, 0DH,'$'
原创
163阅读
0评论
0点赞
发布博客于 7 月前

C++自定义实现通用链表栈

栈作为一种常见的数据结构,在我们平时中接触的比较多,在某些应用中有着重要的是作用,比如说在我们实现计算器计算表达式的结果时,就需要使用栈作为存储的数据结构。下面,我们就是用C++ 实现它的通用链式结构栈。首先是栈的结点类,使用类的模板来定义:#pragma once#include<iostream>#include<string >using namespace std;template< class T>class Node{public: //默
原创
106阅读
0评论
0点赞
发布博客于 9 月前

Swing实现模拟计算器功能

需求: 设计一款图形化计算器实现功能:+ - * / % 的小数运算。效果图:该计算器的可执行文件百度网盘地址:链接:提取码:wevyGitHub地址:源码地址
原创
67阅读
0评论
0点赞
发布博客于 9 月前

JAVAFX实现类似记事本简单功能的小程序

需求如下:基础功能:输入文字并显示复制粘贴(一般系统都支持)保存到本地(存档功能, 下次还能打开)进阶功能:(额外加分):可以打开外部txt文件打开多个txt文件(分页)可调节字体大小&颜色下面是该需求的代码实现:package com.moyisuiying.view;import com.moyisuiying.app.FontSettingSage;import com.moyisuiying.util.Charsetutil;import javafx.bea
原创
414阅读
2评论
2点赞
发布博客于 9 月前

JAVAFX实现生命游戏

生命游戏其实是一个零玩家游戏,它包括一个二维矩形世界,这个世界中的每个方格居住着一个活着的或死了的细胞。一个细胞在下一个时刻生死取决于相邻八个方格中活着的或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因太孤单而死去。实际中,你可以设定周围活细胞的数目怎样时才适宜该细胞的生存。如果这个数目设定过低,世界中的大部分细胞会因为找不到太多的活的邻居而死去,直到整个世界都没有生命;如果这个数目设定过高,世界中又会被生命充满而没有什么变
原创
246阅读
0评论
0点赞
发布博客于 9 月前

回溯法求解部分和问题

题目内容:给出N个正整数组成的数组A,求能否从中选出若干个,使他们的和为K。如果可以,输出:“YES”,否则输出"NO"。输入格式:第1行:2个数N、K, N为数组的长度, K为需要判断的和(2 ≤N ≤ 20,1 ≤ K ≤ 10^9)第2 到第 N + 1行:每行1个数,对应数组的元素A[i] (1 ≤ A[i]≤ 10^6)输出格式:如果可以,输出:“YES”,否则输出"NO"。样例输入4 131247样例输出YES输入样例:5 912345输出样例:YE
原创
365阅读
0评论
0点赞
发布博客于 9 月前

回溯法求解最小机器重量设计问题

题目:设某一机器由n个部件组成,部件编号为1n,每一种部件都可以从m个不同的供应商处购得,供应商编号为1m。设wij是从供应商j处购得的部件i的重量,cij是相应的价格。对于给定的机器部件重量和机器部件价格,计算总价格不超过d的最小重量机器设计。(注意:输出结果中第一行最后没有空格。比如下面的输出样例中1 3 1后面没有空格。)输入格式:第1行输入3个正整数n,m和d。接下来n行输入wij(每行m个整数),最后n行输入cij(每行m个整数),这里1≤n、m≤100。输出格式:输出的第1行包括n个整数
原创
970阅读
0评论
1点赞
发布博客于 9 月前

动态规划C++实现导弹拦截

动态规划C++实现导弹拦截题目内容:某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。输入格式:...
原创
172阅读
0评论
0点赞
发布博客于 9 月前

动态规划法C++实现最大k乘积问题

最大K乘积问题问题描述设I是一个n位十进制整数。如果将I划分为k段,则可得到k个整数。这k个整数的乘积称为I的一个k乘积。试设计一个算法,对于给定的I和k,求出I的最大k乘积。例如十进制整数 1234 划分为 3 段可有如下情形:1 × 2 × 34 = 681 × 23 × 4 = 9212 × 3 × 4 = 144编程任务对于给定的I 和k,编程计算I 的最大k 乘积。数据...
原创
609阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现用弦截法求f(x)= 0的根

实现用弦截法求f(x)= 0的根弦截法的定义:弦截法的百度百科算法描述(1)任取迭代初始值X0,X1(2)计算x2= x1-(X1-X0)*f(X1)/(f(X1)-f(X0));(3)判断收敛性:如果|x 2-x1|<ε或者|f(x2)<ε则算法收敛,停止计算,输出近似解x2(4)令x0=x1,x1=x2返回第二步源程序代码及运行结果截图#include<io...
原创
701阅读
2评论
1点赞
发布博客于 9 月前

数值分析C++实现用牛顿(Newton)迭代法求分f(x)=0在x0附近的根

用牛顿(Newton)迭代法求分f(x)=0在x0附近的根首先引自百度百科的牛顿迭代法的定义:算法描述:(1)任取迭代初始值X0(2)计算x1= x0-f’(x0)/f’(x0);(3)判断收敛性:如果|x1 -x0|<ε或者|f(x1)|<ε则算法收敛,停止计算,输出近似解x1(4)令x0=x1,返回第二步源程序代码及运行结果截图#include<iostr...
原创
623阅读
1评论
0点赞
发布博客于 9 月前

数值分析C++实现用二分法求方程f(x)=0的根

问题:用二分法求f(x) = 0的根。首先我们先知道二分法的定义:对于区间[a,b]上连续不断且f(a)·f(b)<0的函数y=f(x),通过不断地把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法叫二分法。算法描述算法:(二分法)(1)计算f(a), f(b),若f(a)f(b)>0 ,则算法失效,停止计算(2)令x=(a+ b...
原创
1307阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现用四阶龙格-库塔(Runge-Kutta)方法求解常微分方程初值问题

问题:用四阶龙格-库塔(Runge-Kutta)方法求解常微分方程初值问题。算法描述算法的程序框图:具体算法:(1)读取a,b,n,f(2)计算步长h = (b-a)/n,x0=a,y0=f(3)从i = 1开始每次i++,重复以下操作,直到i=n退出循环3.1 计算x1=x0+h, k1 =f(x0,y0);k2=f(x0+h/2,y0+hk1 /2);k3 =f(x0+h/2...
原创
1395阅读
2评论
0点赞
发布博客于 9 月前

数值分析C++实现改进的欧拉(Euler)公式求解常微分方程

算法的程序框图:具体的算法:(1)读取x0,y0,h,n,以及给定的f(x,y)(2) 从i = 1开始每次i++,重复以下操作,直到i=n退出循环2.1 计算x1=x0+h, y1 = y0+ h*f(x0,y0);y2=y0+f(x1,y1); y3 =(y1+y2)/2;2.2打印x1,y32.3 x0=x1;y0 = y1;源程序代码及运行结果截图#include<...
原创
752阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现Romberg积分算法

算法描述其算法的伪代码为:具体的算法:(1)定义一个二维数组R[n][n]用于存储每次积分的值(2)首先计算 R[1][1]=(b-a)*(f(a)+f(b))/2;(3)从j =2开始遍历做以下步骤,直到j=n停止遍历3.1计算步长h =(b-a)/2^(j-1),计算R[j][1]=3.2从i =1开始,每次i自增1直到i = 2^(j-2),计算 f(a+(2i-1)h)的累...
原创
694阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现用复化梯形公式

算法描述(1)计算步长h =(b-a)/n(2)计算sum1 = f(a)+f(b)(3)从 i =1开始计算 h = a+ih,计算f(a+ih)的累加和直到i = n-1得到累加和 sum2(4)计算 I = h*(sum1+2*sum2)/2,即得出结果积分I源程序代码及运行结果截图#include<iostream>#include<vector>...
原创
580阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现线性函数p(x)= a+ bx拟合给定数据

问题:用线性函数p(x)= a+ bx拟合给定数据(xi,;yi;).i= 0,1,2,…,m-1。算法描述(1)给已知条件(X0,y0),(X1,y1),(X2,y2),…,(Xn,yn)点进行对应的包装操作和编号处理(2)根据最小二乘问题的正则方程组2.1 求得 Xk 的累加和,其中k=0,1,2,…m-12.2求得Yk 的累加和,其中k=0,1,2…m-12.3 求得 Xk2 ...
原创
369阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现牛顿(Newton)插值值多项式

问题:已知插值节点序列(xi, yi),i=01,2,…,n, 牛顿(Newton) 插值值多项式Nn(x)计算的函数f(x)在点x0的近似值。首先给出算法步骤:(1)给已知条件(X0,y0),(X1,y1),(X2,y2),…,(Xn,yn)点进行对应的包装操作和编号处理(2)根据已知条件(X0,y0),(X1,y1),(X2,y2),…,(Xn,yn)和要求解的x值计算差商:2.1...
原创
942阅读
0评论
0点赞
发布博客于 9 月前

数值分析C++实现拉格朗日(Lagrange)插值多项式

数值分析实验:已知插值节点序列,用拉格朗日(Lagrange)插值多项式计算函数L0(x)计算函数f(x)在点x0的近似值。首先给出算法描述:(1)给已知条件(X0,y0),(X1,y1),(X2,y2),…,(Xn,yn)点进行对应的包装操作和编号处理(2)根据已知条件(X0,y0),(X1,y1),(X2,y2),…,(Xn,yn)和要求解的x值计算拉格朗日基函数:2.1 首先计算每个...
原创
902阅读
0评论
0点赞
发布博客于 9 月前

将数组循环左移

下面请看一道算法题:设将n (n>1) 个整数存放到一维数组R中。试设计一个在时间和空间两方面都尽可能高效的算法,将R中保存的序列循环左移p (0<p<n) 个位置,即将R中的数据序列由(x0, x1,……,xn-1)变换为(xp,xp+1,……,xn-1,x0,x1,……,xp-1)。在没学算法之前,我们习惯了使用简单的求解方法:借助一个临时数组B首先将数组R前p个元素保存...
原创
102阅读
0评论
1点赞
发布博客于 1 年前

青蛙跳台阶问题的算法以及优化问题

题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个n级的台阶总共有多少种跳法?在遇到这种题目若是没有具体的思路之前,我们可以先列出前面几项的结果sum:当 n = 1 时,青蛙仅有直接跳上一级台阶这种跳法,故 sum = 1;当 n = 2 时,青蛙可以先跳 上 1 级,然后再跳 上 1 级到达2级台阶,共有2中跳法;若青蛙直接跳 2 级台阶,那么有1种跳法,从而 su...
原创
64阅读
0评论
0点赞
发布博客于 1 年前

给定一个含n(n≥1)个整数的数组,请设计一个在时间上尽可能高效的算法,找出数组中未出现的最小正整数。

笔者初涉《算法设计与分析》这门专业课,在做一些算法设计题的过程中遇到一些小感悟,特此记录和大家分享。下面直接给出算法题目:给定一个含n(n≥1)个整数的数组,请设计一个在时间上尽可能高效的算法,找出数组中未出现的最小正整数。例如,数组{-5, 3, 2, 3}中未出现的最小正整数是1;数组{1, 2, 3}中未出现的最小正整数是4。笔者在看完这道题目后,进行了如下分析:(1)题目要求算法时...
原创
3174阅读
1评论
3点赞
发布博客于 1 年前
将字符串的内容转换为一棵二叉树
发布Blink于 2 年前

快速排序的算法实现和图解

在我们的数据结构和算法中,快速排序是我们熟悉的经典的排序算法之一。但是可能对于初学者而言,这个算法有点让人云里雾里不知如何理解。下面笔者会详细地讲解这个排序算法,给出具体的算法,图解过程以及数据结构算法的实现。首先,我们先了解一些快速排序的基本知识:快速排序(Quicksort)是对冒泡排序的一种改进.快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序...
原创
195阅读
0评论
2点赞
发布博客于 2 年前

基于二叉树的家谱系统

先看实验要求:项目名称:基于二叉树的家谱系统项目内容:采用一棵二叉树来表示一个家谱关系,一个家谱可表示为一颗树,首先将其转换成一颗二叉树表示,如下图为红楼梦家谱的一部分:图1.1 家谱的树形表示图1.2 家谱的二叉树表示要求完成的功能如下:(1)输入一颗二叉树的括号表示法,完成树的构建(2)使用后序遍历递归算法遍历二叉树并输出(3)使用先序遍历非递归算法遍历二叉树并输出(4)指...
原创
1782阅读
0评论
8点赞
发布博客于 2 年前

将字符串的内容转换为一棵二叉树

问题:从控制台中输入一串“A(B(C,D(,E)),F(G,H(M,N(,Q))))“,将其转化建立一棵二叉树。从这个问题我们可以知道,首先我们需要一个将这个字符串所表示的二叉树用代码的方式建立起来。我们先来看看这个字符串所表示的二叉树:下面我们开始分析这个二叉树建立的思路:(1)读取第一个字符建立第一个节点即为根节点;(2)继续读取下一个字符,如果遇到“(”,那么当前节点为父节点,并且...
原创
1199阅读
1评论
5点赞
发布博客于 2 年前

prim算法和kruskal算法详解

在我们的数据结构中,当涉及到图的寻找最小的路径时,不得不提到最经典的寻找图的最小生成树的算法:prim算法和kruskal算法详解。下面笔者将与大家共同探讨一下这两个经典的算法和他们的C++代码实现。首先我们先看引自百度百科的prim算法的定义:普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英...
原创
337阅读
0评论
2点赞
发布博客于 2 年前

C++手动实现一个日期类

手动实现一个Date类进行日期的加减计算笔者在之前的文章手动实现一个String中已经详细介绍过了关于重载和运算符重载的基本概念和要注意的事项,这是那篇文章的链接:添加链接描述在实现这个Date类之前如果对操作运算符重载不是很熟悉的看官可以参考参考这篇文章。在实现这个Date类之前先说明的是:在标准的系统封装好的Date类中是以1970年1月1日为起点,1970年1月1日之后的日期为正值,1...
原创
72阅读
0评论
0点赞
发布博客于 2 年前

C++手写自定义实现string类

我们知道,C++给我们提供封装好了一个强大的工具类string类 ,在使用时只需要#include<<string>>即可使用string类提供的各类函数。那么我们能不能模仿string类来自己手写实现自己的MyString类呢?显然这是可以的。在开始手写实现MyString类之前,我们要先了解一些操作运算符重载的基本概念和要注意的条件。一:什么叫重载...
原创
746阅读
0评论
4点赞
发布博客于 2 年前

动态二维数组的实现以及元素不重复的生成

使用二级指针生成动态的二维数组,其中数组元素不重复且0<= arr2D[low][row]<len,len是二维数组的行列数之积.在做这道题之前,我们要先知道,什么叫二级指针,什么叫动态的二维数组,然后再探究怎么生成随机数且让二维数组的元素不重复。那下面让我们开始探究这些问题吧:一:什么叫二级指针?在理解二级指针之前我们先来理解什么叫一级指针,这样便于帮助我们理解...
原创
466阅读
0评论
1点赞
发布博客于 2 年前

Java和c++中二分法查找数组元素的实现机制

Java和c++中二分法查找数组元素的实现机制在数据结构和算法中,我们会见到二分法查找数组元素这个经典的算法。事实上,二分法也称为折半查找法。该算法的主要机制是:**(1)**先将数组元素从小到大排列(或者从大到小排列,下面算法是基于小到大排序)**(2)**有一维数组arr1D[len],len为数组的长度,首先定义int low =0,int high = len;确定该数组区间的中间位...
原创
80阅读
0评论
0点赞
发布博客于 2 年前