自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 图书管理系统

前言最近自己写了一个图书管理系统,陆陆续续的摸索着往里面加功能。下一个目标是用EasyX写一个图形界面出来,或者实现群体借阅这样子。完成之后会在本篇文章进行更新。如果有bug还望各位同袍在评论区告知。代码#include<stdio.h>#include<Windows.h>#include<ctype.h>#include<string.h>#include <stdlib.h>#include <stddef.h&gt

2021-06-17 02:14:29 725

原创 三维人脸有关技术的往昔与展望

浅析三维人脸有关技术的往昔与展望摘要:现如今在电影和游戏业中,形态各异的三维人脸可谓比比皆是。从最开始抽象的表情、粗糙的架构,到现在好似真实人脸的栩栩如生,这正是计算机图形学几十年的发展所带来的成果。本篇文章将参考前辈们的五篇论文,来简要分析三维人脸技术的开端及发展该方向的意义,几十年来的进步,还有对未来的展望,最后对相关技术的发展进行一个简要的总结。希望能对其他对该方向有兴趣的同袍们给予一点小小的帮助。关键词:人脸识别 人脸对齐 三维人脸 人脸检测 发展总结一、三维人脸技术发展的意义及开端

2021-06-17 00:47:11 536

原创 程序设计之归并排序

6-86 归并排序 (10 分)本题要求实现二路归并排序中的归并操作,待排序列的长度1<=n<=1000。函数接口定义:void Merge(SqList L,int low,int m,int high);其中L是待排序表,使排序后的数据从小到大排列。 ###类型定义:#include<stdio.h>#include<stdlib.h>typedef int KeyType;typedef struct {

2021-04-19 01:32:56 612

原创 程序设计之链表逆置

6-61 链表逆置 (20 分)本题要求实现一个函数,将给定单向链表逆置,即表头置为表尾,表尾置为表头。链表结点定义如下:struct ListNode { int data; struct ListNode *next;};函数接口定义:struct ListNode *reverse( struct ListNode *head );其中head是用户传入的链表的头指针;函数reverse将链表head逆置,并返回结果链表的头指针。裁判测试程序样例:#include

2021-04-19 01:30:32 326

原创 程序设计之奇数值结点链表

6-59 奇数值结点链表 (20 分)本题要求实现两个函数,分别将读入的数据存储为单链表、将链表中奇数值的结点重新组成一个新的链表。链表结点定义如下:struct ListNode { int data; ListNode *next;};函数接口定义:struct ListNode *readlist();struct ListNode *getodd( struct ListNode **L );函数readlist从标准输入读入一系列正整数,按照读入顺序建立单链表。当

2021-04-19 01:24:47 167

原创 程序设计之链表拼接

6-58 链表拼接 (20 分)本题要求实现一个合并两个有序链表的简单函数。链表结点定义如下:struct ListNode { int data; struct ListNode *next;};函数接口定义:struct ListNode *mergelists(struct ListNode *list1, struct ListNode *list2);其中list1和list2是用户传入的两个按data升序链接的链表的头指针;函数mergelists将两个链表合并成

2021-04-19 01:22:11 372

原创 程序设计之逆序数据建立链表

6-57 逆序数据建立链表 (20 分)本题要求实现一个函数,按输入数据的逆序建立一个链表。函数接口定义:struct ListNode *createlist();函数createlist利用scanf从输入中获取一系列正整数,当读到−1时表示输入结束。按输入数据的逆序建立一个链表,并返回链表头指针。链表节点结构定义如下:struct ListNode { int data; struct ListNode *next;};裁判测试程序样例:#include <s

2021-04-19 01:19:41 699

原创 https协议的流程及其解决的问题

什么是HTTPSHTTPS 是综合了对称加密和非对称加密算法的 HTTP 协议。既保证传输安全,也保证了传输效率。HTTPS解决的问题Http主要存在三种问题——易被窃听、篡改、冒充。Https采取的解决办法是使用SSL/TSL,为所有信息加密传输,避免三方窃听通信内容。同时设置校验机制,一旦内容被篡改,通信双方立刻会发现。此外还配备了身份证书以防备被冒充。HTTPS大致流程:1.客户端向服务器发送请求,包括支持的协议等,并附带一个随机数字m。2.服务器收到请求后,选择某种非对称加密算法,把数

2021-04-13 20:31:14 688

原创 索引主要采用的数据结构?建立索引的原则?

mysql数据索引主要采用的数据结构:Hash、平衡二叉树(AVL树)、B树(BTrees)、B+树(B+Trees)优缺点比较:Hash优点:通过字段计算hash值,定位数据非常快缺点:不支持范围查询,底层数据结构是散列的,无法对比大小,索引不支持范围查询。平衡二叉树树的高度越高,I/O次数越多,范围查询效率将会越低。但如果高度很低,则结果很快。B树在平衡二叉树中,减少了二叉树的I/O次数,效率比平衡二叉树高,因为B树节点可以有多个元素,从而提高效率,但范围查询效率比较低。B+树优点

2021-04-13 20:30:47 265

原创 索引失效的几种情况?什么时候没必要用索引?Join与子查询?

索引失效的几种情况:1、如果条件中有or,其中只有部分条件带了索引,但它们不会生效。想让索引生效,只能将or条件中的每个列都加上索引。2、对于复合索引,如果不使用前列,后续列也将无法使用,类电话簿。3、存在索引列的数据类型隐形转换,则用不上索引,比如列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则索引失效。4、where 子句里对索引列上有数学运算,用不上索引。5、where 子句里对有索引列使用函数,用不上索引。什么时候没必要用索引:1、数据唯一性差(一个字段的取值只有几种时)的

2021-04-13 20:30:29 741

原创 程序设计之C语言递归求阶乘和

6-9 递归求阶乘和 (15 分)本题要求实现一个计算非负整数阶乘的简单函数,并利用该函数求 1!+2!+3!+…+n! 的值。函数接口定义:double fact( int n );double factsum( int n );函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+…+n! 的值。题目保证输入输出在双精度范围内。裁判测试程序样例:#include <stdio.h>double fact( int n );double fac

2021-04-13 20:29:53 2688

原创 如何保证TCP的可靠性?UDP和TCP的区别?几种常见method的区别?

如何保证TCP的可靠性?1、校验和TCP校验和的计算在计算时要加上12byte的伪首部,检验范围包括首部及数据部分。计算方法为:发送方将整个报文段分为多个16位的段,然后将所有段进行反码相加,将结果存放在校验和字段中,接收方用相同的方法进行计算,如最终结果检验字段所有位全是1,则正确,否则错误。2、序列号序列号是指TCP对每个字节的数据都进行的编号。当接收到的数据总少了某个序号的数据时,可以马上知道。3、ACK(确认应答机制)在TCP的首部中有一个标志位ACK,用来表示确认号是否有效。接收方对于

2021-04-13 20:29:37 307

原创 程序设计之C语言判断满足条件的三位数

6-6 判断满足条件的三位数 (15 分)本题要求实现一个函数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。函数接口定义:int search( int n );其中传入的参数int n是一个三位数的正整数(最高位数字非0)。函数search返回[101, n]区间内所有满足条件的数的个数。裁判测试程序样例:#include <stdio.h>#include <math.h>int search( int n );int m

2021-04-12 13:44:25 2408

原创 程序设计之C语言英文单词排序

7-1 英文单词排序 (25 分)本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。输入格式:输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。输出格式:输出为排序后的结果,每个单词后面都额外输出一个空格。输入样例:blueredyellowgreenpurple#输出样例:red blue green yellow purple S

2021-04-12 13:41:46 1897

原创 Java入门之二维向量定义及相加

6-2 二维向量定义及相加(Java) (10 分)裁判测试程序样例中展示的是一段二维向量类TDVector的定义以及二维向量求和的Java代码,其中缺失了部分代码,请补充完整,以保证测试程序正常运行。函数接口定义:提示:需要补充的成员方法有:1. 无参构造方法2. 带参构造方法3. getX4. getY5. setX6. setY7. add方法裁判测试程序样例:import java.util.Scanner;class TDVector { private dou

2021-04-12 13:33:23 2617

原创 JAVA入门之格式化输入与字符串

7-1 jmu-Java-01入门-格式化输入输出与字符串 (15 分)###本题主要考察使用Scanner处理输入使用System.out.printf进行格式化输出String常用方法与字符串常用操作main###输入说明:输入double,然后输入3个浮点数。输出:从左到右依次输出3个double(均保留2位小数输出,宽度为5),格式依次为:右侧填充空格,左侧填充空格,直接输出输入int,然后输入3个整数(以1个或多个空格分隔)。输出:将3个整数相加后输出。输入str,然后输入3个字

2021-04-12 13:30:09 2145

原创 数据结构基础之迭代法归并排序

6-1 Iterative Mergesort (7 分)How would you implement mergesort without using recursion?The idea of iterative mergesort is to start from N sorted sublists of length 1, and each time to merge a pair of adjacent sublists until one sorted list is obtained. Y

2021-04-12 13:24:46 629

原创 数据结构基础之最短路径函数

6-1 Shortest Path [3] (8 分)Write a program to not only find the weighted shortest distances, but also count the number of different minimum paths from any vertex to a given source vertex in a digraph. It is guaranteed that all the weights are positive.Fo

2021-04-12 13:19:47 254

原创 数据结构基础之FileTransfer

7-1 File Transfer (8 分)We have a network of computers and a list of bi-directional connections. Each of these connections allows a file transfer from one computer to another. Is it possible to send a file from any computer on the network to any other?Inp

2021-04-12 13:13:35 452

原创 数据结构基础之完全二叉搜索树

7-1 Complete Binary Search Tree (10 分)A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties:The left subtree of a node contains only nodes with keys less than the node’s key.The right subtree of a node con

2021-04-12 13:09:18 82

原创 数据结构基础之树的遍历

7-1 Tree Traversals Again (10 分)An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stack operations are: push(

2021-04-12 13:06:36 94

原创 数据结构基础之C语言Pop Sequence

7-1 Pop Sequence (10 分)Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, …, N and pop randomly. You are supposed to tell if a given sequence of numbers is a possible pop sequence of the stack. For example, if M is 5 a

2021-04-09 09:20:02 374

原创 数据结构之C语言Dequeue

6-3 Deque (10 分)A “deque” is a data structure consisting of a list of items, on which the following operations are possible:Push(X,D): Insert item X on the front end of deque D.Pop(D): Remove the front item from deque D and return it.Inject(X,D): Inser

2021-04-09 09:17:11 1593

原创 数据结构基础之Add Two Polynomials

6-1 Add Two Polynomials (8 分)Write a function to add two polynomials. Do not destroy the input. Use a linked list implementation with a dummy head node. Note: The zero polynomial is represented by an empty list with only the dummy head node.Format of fun

2021-04-09 08:55:37 1053

原创 程序设计之C语言冒泡排序过程

7-2 冒泡法排序之过程 (10 分)本题要求使用冒泡法排序,将给定的n个整数从小到大排序后输出,并输出排序过程中每一步的中间结果。冒泡排序的算法步骤描述如下:第1步:在未排序的n个数(a[0]〜 a[n−1])中,从a[0]起,依次比较相邻的两个数,若邻接元素不符合次序要求,则对它们进行交换。本次操作后,数组中的最大元素“冒泡”到a[n−1];第2步:在剩下未排序的n−1个数(a[0] 〜 a[n−2])中,从a[0]起,依次比较相邻的两个数,若邻接元素不符合次序要求,则对它们进行交换。本次操作后

2021-04-09 08:43:46 1513

原创 程序设计之C语言选择法排序第K趟

7-1 选择法排序之第k趟 (10 分)本题要求使用选择法排序,将给定的n个整数从小到大进行排序,输出第k趟(k从0开始)排序后的结果。选择排序的算法步骤如下:第0步:在未排序的n个数(a[0]〜 a[n−1])中找到最小数,将它与 a[0]交换;第1步:在剩下未排序的n−1个数(a[1] 〜 a[n−1])中找到最小数,将它与 a[1] 交换;……第k步:在剩下未排序的n−k个数(a[k] 〜 a[n-1])中找到最小数,将它与 a[k] 交换;……第n−2步:在剩下未排序的2个数(a[n

2021-04-09 08:40:48 2649

原创 程序设计之C语言链表逆置

6-3 链表逆置 (20 分)本题要求实现一个函数,将给定单向链表逆置,即表头置为表尾,表尾置为表头。链表结点定义如下:struct ListNode { int data; struct ListNode *next;};函数接口定义:struct ListNode *reverse( struct ListNode *head );其中head是用户传入的链表的头指针;函数reverse将链表head逆置,并返回结果链表的头指针。裁判测试程序样例#include &

2021-04-09 08:30:48 318

原创 程序设计之C语言链表拼接

6-2 链表拼接 (20 分)本题要求实现一个合并两个有序链表的简单函数。链表结点定义如下:struct ListNode { int data; struct ListNode *next;};函数接口定义struct ListNode *mergelists(struct ListNode *list1, struct ListNode *list2);其中list1和list2是用户传入的两个按data升序链接的链表的头指针;函数mergelists将两个链表合并成一

2021-04-08 14:46:28 752

原创 程序设计之C语言求单链表节点的阶乘和

6-3 求单链表结点的阶乘和 (20 分)本题要求实现一个函数,求单链表L结点的阶乘和。这里默认所有结点的值非负,且题目保证结果在int范围内。函数接口定义:int FactorialSum( List L );其中单链表List的定义如下:typedef struct Node *PtrToNode;struct Node { int Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToNod

2021-04-08 14:41:52 241

原创 程学设计基础之C语言考试座位号

7-4 考试座位号 (15 分)每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。输入格式:输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号。其中准考证号由 16 位数字组成,

2021-04-08 14:28:48 225

原创 程序设计基础之C语言计算职工工资

7-3 计算职工工资 (15 分)给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。输入格式:输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符的非空字符串,其他输入、输出保证在单精度范围内。输出格式:按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格,工资保留2位小数。输入样例:3z

2021-04-08 14:26:25 5368

原创 程学设计基础之C语言查找书籍

7-2 查找书籍 (20 分)给定n本书的名称和定价,本题要求编写程序,查找并输出其中定价最高和最低的书的名称和定价。输入格式:输入第一行给出正整数n(<10),随后给出n本书的信息。每本书在一行中给出书名,即长度不超过30的字符串,随后一行中给出正实数价格。题目保证没有同样价格的书。输出格式:在一行中按照“价格, 书名”的格式先后输出价格最高和最低的书。价格保留2位小数。输入样例:3Programming in C21.5Programming in VB18.5Progra

2021-04-08 14:23:47 400

原创 程序设计基础——C语言时间换算

7-1 时间换算 (15 分)本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。输入格式:输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。输出格式:输出在一行中给出hh:mm:ss格式的结果时间。输入样例:11:59:4030输出样例12:00:10Solution#include<stdio.h>struct time{ int s,m,h;};i

2021-04-08 14:21:15 2007 2

原创 计算机图形学之宇宙牌轿车

前言最近在学计算机图形学时,基于之前自己完成的轿车以及太阳系两个程序,老师布置了个新作业——将这两个结合起来,画一台宇宙牌轿车!我兴致勃勃地写了一上午,最后好不容易完成了。有一点小bug——太阳一直闪。这可能是车和太阳同时display时电脑性能不够导致的。如果各位同袍们有改进的想法欢迎评论区留言。现把代码发布如下,希望能给各位同袍们一点帮助。注意复制代码不可直接运行。需要glut等库。可在官网自行下载配置。编译环境: Visual Studio 2017,语言:C++MyCar#include&

2021-04-07 11:34:12 378 1

原创 计算机图形学之简易太阳系

前言最近学Computer Graphics的时候,第一次大作业是写一个太阳系。由于老师要求松,自己又一直拖着没交,最后干脆直接总写了一个带纹理、光照的太阳系。交上去之后发现有点问题:题目要求月亮和地球绕着不同的方向旋转,这里没想到直接把它们平面化了。。。不过这也好,直接放上来间接防抄袭了。。。所以现在把代码发布如下,希望能对各位同袍有一些帮助。注意复制代码后不能直接运行,需要glut库。可自行前往官网下载配置即可。运行环境 Visual Studio 2017,语言C++。MySolar#inc

2021-04-07 11:29:19 1803 1

原创 Java小程序简易多客户端聊天服务器

前言最近在上JAVA课时学习了多线程有关知识,结合之前的练习,自己试着写了个多客户端聊天器。现放在这里,希望能对各位同袍有所帮助。注意为了防止抄袭,以下仅放出Client和Server部分。对于信息部分没有发上来。不过主要难点都在已发上来的两部分中,应该也够了吧。Client部分import java.net.*;import java.io.*;import java.util.*;//The Client that can be run as a consolepublic cla

2021-04-07 11:07:15 306 1

原创 计算机图形学之绘制旗子

前言在整理过去完成的图形学作业时发现了这个作业。当时试着花了五六个旗子,结果现在换了个电脑留下来的就只剩这一个了。。。自己也忘了是哪一国的国旗。这是计算机图形学第二次课的作业,整体也就是画几条边,分几个色块。稍微难一点的是画个五角星。写个rotate函数直接转五次就好。现在把代码贴在下面,希望能给各位同袍们一点帮助。如需转载请标明出处。代码部分#include "gl/glut.h"#include <math.h>#define NDEBUG#define PI 3.14159

2021-04-02 15:21:32 1194 1

原创 计算机图形学Bresenham算法的简单应用

前言在学计算机图形学课程的过程中,第一次课程实践作业是运用Bresenham算法来画椭圆。只要了解了该算法的思想,其实很简单。现把代码放在下面,希望能给各位同袍们一些帮助。代码部分//鸣谢:《计算机图形学》第三版 P73-77, P86-94#define _CRT_SECURE_NO_WARNINGS#include <math.h>#include <stdio.h>#include <gl\glut.h>#include <iostream&

2021-04-02 15:13:58 301

原创 安卓小程序——ZJU健康

前言最近上智能终端开发课程时,和舍友一起写了个安卓小程序。名字是ZJU健康,用于记录用户的健康变化情况,以及一些其他的辅助功能(如插入图片、时钟等)。现在将本程序的Weight部分来发表在这里,希望能对同样学习这门课的同袍们有所帮助。所用的开发平台是Android Studio,开发语言为Java。代码部分WeightDB模块package com.android.project.core;import java.util.ArrayList;import java.util.List;

2021-04-02 14:53:32 96

原创 数字逻辑设计大程——以撒的结合(Verilog语言)

前言在大二学习数字逻辑设计课程(即计算机组成课程的前引课)时,期末大程题目我和同组的github成员lwaekfjlk 决定写一款基于Verilog语言的游戏。原型是我们两人都非常喜爱的一款游戏——The Binding of Isaac: Rebirth。在三天三夜的奋战后,基本完成了预期目标。由于亲自编写了其中种种,我们深知新手初期使用Verilog语言有多困难。而可悲的是,这又是之后计算机组成课程和体系结构课程所需的!因此,我们将top部分源码放在这里,供同袍们参考。若想引用还请注明出处。代码部分

2021-04-02 13:53:34 773

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除