自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 BUPT-DSA 2019 Fall Chap.3 0-1背包问题

这实际上并不是标准的0-1背包问题,可以认为所有物品的价值都是1。而且也不是寻找最优解,而是输出所有可能的解,所以深度优先搜索(DFS)就显得格外合适。全局区的变量会被自动置零,可以不用赋初值。#include <cstdio>#define MAX 100int solution_cnt;//解方案数int bag_capacity;//包容量int items_cnt,...

2019-10-07 09:45:42 124

原创 BUPT-DSA 2019 Fall Chap.3 推导n阶汉诺塔(梵塔)执行move步骤的次数

根据汉诺塔的递归定义void hanoi(int n,...) if(n==1) move(1,...); else { hanoi(n-1,...); move(n,...); hanoi(n-1,...); }由此可见,函数在n=1时执行一次move函数后退出,在非1时,执行一次move并执行两次n...

2019-10-07 09:38:07 1030

原创 BUPT-DSA 2019 Fall Chap.1 利用带头结点的链表实现多项式的乘法

利用带头结点的链表实现多项式的乘法(实际上不带头结点操作起来要方便一些)由于使用了结构体的整体赋值,需要打开C++11语法,如果不想开也可以单独逐个赋值。由polynomialMultiply()函数返回一个新的多项式,而不对输出的poly1和poly2做修改。多用const是好习惯。typedef struct _polynomial{ int coef,expon; struct...

2019-10-07 09:35:15 183

原创 Learning Materials for BUPT-SCS 2019 Fall

csappCMU 15213bilibili,2015 Spring,NO SUBTILE生肉-CMU-15213-Introduction to Computer System-2015 spring-深入理解计算机系统

2019-09-05 21:33:20 341

原创 ZJU数据结构 02-线性结构4 Pop Sequence (25 分)

Reference·出栈顺序的理论依据入栈出栈规律··栈所有出栈方法的数量给定入栈顺序,求所有可能的出栈顺序·利用栈模拟的解法 (同)C风格写法 02-线性结构4 Pop SequenceC++ with STL 02-线性结构4 Pop Sequence (25分)·枚举栈所有可能的出栈序列1,2,3,4按顺序入栈,出栈顺序随意,列出所有可能情况,这个算法怎么写 问题点数:20分....

2019-09-02 21:02:42 370

原创 ZJU数据结构 02-线性结构3 Reversing Linked List (25 分)

Reference使用数组存储所有的地址,再对地址数组操作的解法 (同)02-线性结构3 Reversing Linked List (25分)cpp的vector容器C++ vector 容器浅析双向链表解法SegmentFault 02-线性结构3 Reversing Linked List#include <stdio.h>#define MAX 100001t...

2019-09-02 09:32:15 123

原创 Stanford cs231n ImportError: cannot import name imread的解决方法

Reference: python使用scipy.misc import imread报错:ImportError: cannot import name imread原因很简单,新版scipy把imread函数给删了,但是作业里依然使用了imread函数。解决方法降级scipy打开Terminal,输入pip install scipy==1.2.1或者conda install...

2019-08-19 17:22:52 586

原创 Fun. "201x年刑侦科推理试题"网图题的暴力求解

每年这图都会换个年份重新出现。用cpp写的,暴力枚举,没有丝毫优化,就是枚举+检验。数组a保存枚举的一个结果,取下标1~10,0号位设为-1来避免干扰。答案是B C A C A C D A B A判断的函数c表示criteria,即判据,后跟数字表示第几题的题目要求。函数中出现的b[]数组用于存储题目中的信息,是辅助数组稍微用了点竞赛的技巧,枚举数时,由于均为A/B/C/D,将其视...

2019-08-02 23:37:32 377

原创 浙大数据结构2019夏 02-线性结构2 一元多项式的乘法与加法运算 (20 分)

没啥好说的,逐项加逐项乘即可。另外写了一个算幂的函数,动不动爆int。#include <stdio.h>#include <stdlib.h>#define MAX_FORMULA_LENGTH 100struct PolyNode{ int coef; int expon; struct PolyNode* next;};typedef struc...

2019-07-10 09:48:44 208

原创 ZJU数据结构2019夏 01-复杂度3 二分查找 (20 分)

常规的二分查找,有几个注意点1.使用mid=inf+(sup-inf)/2来防止mid=(inf+sup)/2时爆int。2.循环条件应该是inf<=sup,这样在inf==sup时,程序会检查L->Data[mid]==X来决定是否返回mid。如果将其改成inf<sup,则当inf=sup时,程序并没有检查mid的元素是否满足,如果再在底下不检查而直接返回if(inf==s...

2019-07-09 14:56:27 127

原创 北邮2019春计导下 [project] 外卖订单模拟 0.代码分享

实在是懒得更了,把代码贴出来好了。Published on GithubTakeaway-Simulation-Project-Submitted-Version,BUPT collaboration assignment, 2019 spring.会用Github的自行操作不会用的,依次点击Clone or Download,Download ZIP即可下载。命令行动画版本包含文件...

2019-07-09 10:43:31 490 1

原创 北邮2019春计导下 [project] 外卖订单模拟 5.字符动画

没什么好讲的,具体原理就是定一个220x60的字符数组,把内容都写进数组,每时刻更新一次display.c#include "define.h"#include <stdlib.h>#include <string.h>#include <stdio.h>enum PARAMETERS{ RESOLUTION_X=220,RESOLUTION_Y...

2019-07-08 18:02:15 297

原创 北邮2019计导下 [project] 外卖订单模拟 4.算法部分

说来惭愧,我并没有什么好的算法,这个算法还是我和室友在宿舍里随便yy出来的,可能并不优秀,但是帮我们完成了整个大作业。每次去讨论算法的课,看别人什么bfs、dfs、遗传算法各种方法玩的溜的很。窝,窝听不懂啊。中间去蹭了一节三大班的计导课,收获比较大,从一个大佬组的ppt中,我得知了这是开始引用在极强约束下(时间窗口和店家住处经过排序)的NP-Hard问题,因而解空间大大小于普通的NP-Ha...

2019-07-08 17:50:07 406

原创 华科机卓实验 平面截三角形拟合的立体图形

朋友给我的一个题目,让我写写看。具体的题目可以见代码后附,这里简单描述一下。就跟PS里可以用画多边形来抠曲线图形一样,三维的任意形状的物体也可以用很多个三维空间的三角形来拟合,只要拟合的单位足够多,最后的效果会不错。用拟合的图形代替原图形,再用一个给定的平面去截,截到三角形的边上时会得到很多交点,全部连起来就可以得到截面图形。给出一系列三角形,再输入一个平面,求该平面与每个三角形每条边的交...

2019-07-07 15:05:27 749 3

原创 北邮2019春计导下 [project] 外卖订单模拟 3.总体思路

写在前面1.这是我的个人博客,我写的内容仅针对我自己的开发经历。而且写博客仅是爱好,不是义务。2.受能力所限,我的方法并不是最优解。3.我会放出自己的代码供大家参考,我相信各位是纯洁的。但防小人不防君子,禁止大片剽窃代码。4.由于大作业并没有显著的性能需求,所以代码中可能存在的内存泄漏的问题没有完全修复。初拿到这个项目可能没有主意,这很正常。先不要把课题想那么复杂,仅选取最基本的模块,...

2019-07-06 13:25:07 458

原创 北邮2019春计导下 [project] 外卖订单模拟2.常见问题Q&A

这里总结了一些我遇到的和被询问到的常见问题,欢迎评论区提问和补充。0.我不会用ege怎么办(动画版本的运行库)你从百度网盘下载来的ege解压应该是有4个文件夹,其中include文件夹包含有你需要引用的头文件,而还有一个文件夹的名字叫man,不是男人,是manual的缩写(相信学过Linux的同学会表熟悉),即用户手册。打开里面有个index.html,用浏览器打开即可看到ege的用户手册了。...

2019-07-05 22:41:54 336

原创 北邮2019春计导下 [project] 外卖订单模拟 1.前言(技术无关)

碎碎念其实老早就想写了,但是事实上自己的作业也在删删改改没有定稿,更别提第二版的验收标准在验收前两天晚上才放出来,还是在考试周。最终验收还是很顺利地通过了,希望能获得一个不错的分数。考试完后到武汉大学和华中科技大学找高中的一群好友玩了几天,毕竟我是湖北的,武科的同学也非常多,大家相见也非常开心,就是连续吃了好几天火锅我daisy有点吃不消 …按理说玩完了回家了总该更新了,然后就发生了最糟心的...

2019-07-05 21:52:22 254

原创 浙大数据结构2019夏 01-复杂度1 最大子列和问题 (20 分)

Reference:作者: DS课程组单位: 浙江大学时间限制: 50000 ms内存限制: 64 MB代码长度限制: 16 KB应用老师上课讲的动态处理的办法即可。拿currentSum去累积加到当前的最大和,如果是正的,就对下一次的和有贡献,留着。如果是负的就舍弃,重新假设一个子列。#include <stdio.h>int maxSum(int arr[],i...

2019-06-29 19:44:57 404

原创 北邮2019春计导下 [project] Easy Graphics Engine的有关问题

EGG->Easy Graphics Engine一个古老而简陋的cpp图形库在Devcpp下安装EGG1.戳去官网下载,会打开一个百度网盘,不出意外用推荐的FULL版本2.解压可以发现这个库安装只需要放两个头文件(在include里)和一个静态链接库(在lib里)3.找到你Devcpp的安装文件夹,因为如果你没有自己安装编译器的话,用的是其内置的mingw右击桌面的Dev...

2019-05-28 19:36:16 400

转载 北邮2019春计导下 [project] 外卖派单模拟 0.课题布置

Copyright本课题所有权归北邮计算机导论课题组所有,本人仅做转载,如有异议请联系我,我会迅速删除。任务概述:你开了一家外卖快递服务店,负责一个区域内的外卖订单接收和餐食快递.你有一笔启动资金,可以招募外卖骑手帮你送餐,来赚取快递费.但你也会面临风险,本区域的订单你都有义务接收,不能拒绝,若拒单政府就会吊销你的营业执照;但如果接收多个订单后,因为骑手来不及送,导致某个订单超时未送达,客户...

2019-05-23 18:47:04 761 2

原创 buaacoding ?.海洋与陆地

本来一个很简单的题因为一个极其愚蠢的错误卡了非常久……题目描述**输入:**输入n+1行,第一行为正整数n,表示地图的大小,n<=100之后n行每行输入n个字符,由*和#组成,其中*表示海洋,#表示陆地两块陆地在上下左右四个方向上有间接接壤视为同属于一个大陆例如*##*视为拥有两块大陆输出有多少块大陆输入样例5*###***##*#****#*#*****#...

2019-05-02 23:47:07 497

原创 ZJU数据结构2019春 队列的数组实现

类型名称:队列(Queue)数据对象集:一个有0个或多个元素的有穷线性表。操作集:长度为MaxSize的队列Q  Queue,队列元素item  ElementType1、Queue CreatQueue( int MaxSize ):生成长度为MaxSize的空队列;2、int IsFullQ( Queue Q, int MaxSize ):判断队列Q是否已满;3、void Add...

2019-05-01 21:48:08 274

原创 buaacoding G.CWD的套圈游戏

计导大作业一点头绪也没有,想不到算法,连暴力都不知道往哪儿用力,话说我还没找到组织,有没有哪个大佬组能把我收了。。。还是那个北航同学,又扔过来道题目,挺简单的,就是嵌套排序用的不太利索了。#include <stdio.h>typedef struct _item{ int x; int y; int vi; int pi;} Item;int main(int ...

2019-04-09 21:08:38 349

原创 北邮2019计导下 [Project] 电梯模拟调度 Preload

Preload这个项目还没有正式开始,还在自由选组阶段,今天有点空闲时间先来调查一下。PS: 我还没有组收留,左老师班上哪里有大佬组把蒟蒻我收留下。背景调查[北邮人论坛] 文章主题: 请教一下DEV-C++下怎么用egg图形库啊从底下回复贴来看,北邮布置这个作业至少有十年历史了……回帖都在怀念之前自己做这个项目的时光。总体评价还有说项目太过古老,与现代脱节严重的……罢辽,还是能从前辈们的...

2019-04-07 21:16:13 1104 3

原创 PKU算法基础(二)Exp6.1 数字三角形 //POJ1163

POJ1163动态规划。首先是正着来,i行j列的数字的上级可以是左对角,也可以是右对角,所以取较大的那个加上本身就可以得到到达该数时的最大和。将整个数组初始化为零,求较大值时就不用考虑越界的情况。很容易写出代码(见下面)但是正向写并不够优秀,因为需要考虑(i+1,j-1)位置的越界问题,再就是最后还要遍历最后一排的元素去找最大值,这是完全没有必要的消耗。考虑倒着来做,最后一排作为出发点...

2019-04-05 22:18:31 137

原创 Blender Elementary I

修改软件界面为中文左上角File->User Preferences,选择System选项卡,鼠标滚轮下翻(没显示全),找到最右下角的International Fonts选项,勾选后弹出Language设置,选择简体中文。之后还要将下面的Interfafce Tooltips New Data分别按下。Blender支持部分翻译。最后Save user settings....

2019-04-02 18:47:50 146

原创 ZJU数据结构2019春 堆栈的数组和链表实现

才开始学习数据结构,实现了一个简单的堆栈实例。就是把输出的数字倒序打印,通过调整top下标实现。注意:1.别名Stack实际上是struct _stack的指针,在申请内存来放结构体时,应该是sizeof(struct _stack)。2.数组malloc时是单个元素体积*元素数量3.简单的返回值可以一行实现。类型名称: 堆栈(Stack)数据对象集:一个有0个或多个元素的有穷线性表。...

2019-04-01 14:14:40 180

原创 buaacoding C.真心话大冒险

北航的同学扔过来的题目,我不太会写。你航还真是凶残,同学没语言基础,下半年开学才开始接触C语言,现在就做这种题。能写出一种能用的算法,就是直接模拟,时间复杂度O(n^2),空间复杂度(O^2),实在是谈不上优秀。抛砖引玉吧。使用自然下标操作,即从1开始计数。#include <stdio.h>#define MAX 1000int n;int order[MAX+1];...

2019-03-29 21:15:41 950

原创 北邮2019计导下 链表二 B. 实验11_15_拆分链表

#include <stdio.h>#include <stdlib.h>typedef struct _node{ char data; struct _node *nextPtr;} Node;Node* createListWithBlank();void splitList(Node **LsPtr,Node **LettersPtr,Node *...

2019-03-21 21:28:09 2327

原创 北邮2019计导下 链表二 A. 实验11_9_链表归并

这题有些奇怪,前8组很顺利,第9组数据死活过不了,提示运行时错误。找老师拿来了测试数据,不论是手动输入、freopen重定向还是geeksforgeeks的ide,结果都没有任何问题,不知道怎么回事。如果有学习过归并排序的朋友应该会对这个操作有些熟悉。类似于merge,但是相同的元素保留在原来的线性表中。思路设计lowerBound函数,其用途是,对于一个给定的数key,找出链表A中不大于k...

2019-03-21 19:32:41 3171 4

原创 北邮2019计导下 链表一 B. 实验11_10_链表排序

#include &amp;lt;stdio.h&amp;gt;#include &amp;lt;stdlib.h&amp;gt;typedef struct _node{ int data; struct _node* nextPtr;} Node;Node* createList();void destoryList(Node** sPtr);int lenList(Node **sPtr);void ...

2019-03-17 08:32:11 1437

原创 北邮2019计导下 链表一 D. 实验11_13_链表交换

这题相对来说坑大一些,而且理解起来有丶难度。1.理解灵魂画师上线(可以自己动手画一画)很普通的链表原来的遍历顺序或者说是这样交换后顺序就成了这样所以总结起来,对于general situation,我们要做的的是1.把S1的前驱prevS1节点的节点域改成S2,用来在第一段后执行紫色段。2.把T2的节点域改成T1的节点域,用来在紫色段执行完后执行中间的白色段3.把原S...

2019-03-16 10:04:43 2340 3

原创 北邮2019计导下 链表一 C. 实验11_11_链表匹配

这个题目实际上是改过的,原来的描述就是子序列,我就按照子序列做了,错了再审题才发现要求连续。经群里大佬反映,老师已将题干修正。创建和删除链表可以照抄之前的程序,匹配的话其实和数组差不了太多。按老师的命名规则的话,变量名加上Ptr后缀表示一级指针,sPtr后缀表示二级指针(s-&gt;supreme2333)。#include &lt;stdio.h&gt;#include &lt;stdl...

2019-03-16 09:00:25 2157

原创 北邮2019计导下 链表一 A. 实验11_4_初识链表

常规的创建单链表(FIFO和FILO都行)和遍历的题。typedef和struct的声明可以写在一起。链表所有的处理函数,不管有没有必要,都使用二级指针(Node**)传入,保证接口的一致性。#include &amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;gt;#include &amp;amp;amp;amp;lt;stdlib.h&amp;amp;amp;amp;gt;typedef struct _node{ in

2019-03-16 08:43:52 1167

原创 PKU 程序设计与算法(三)C++面向对象的程序设计 第一周 从 C 到C++ 测验与作业

PKU 程序设计与算法(三)算法基础

2019-02-21 18:21:56 368

原创 PKU 程序设计与算法(二)算法基础 Chapter 1.枚举 完美立方//POJ 1543 生理周期//POJ 1006 称硬币//POJ 1013

完美立方Perfect Cubes#include &amp;amp;lt;iostream&amp;amp;gt;#include &amp;amp;lt;cstdio&amp;amp;gt;//C++最好用这个而不是stdio.husing namespace std;int main(int argc, char const *argv[]){ int n; cin&amp;amp;gt;&amp;amp;gt;n;

2019-02-18 17:33:04 214 1

原创 Algorithm LCS最长公共子序列

算法:递归法:对于序列A[0,n]]和B[0,m],LCS(A,B)无非三种情况若A或B为空,则取作空序列,作为递归基如果末字符相等,即A[n]=B[m]=‘X’,则取LCS(A[0,n),B[0,m))+‘X’,如果前者可以求解,则问题的规模被缩小如果末字符不相等,即A[n]!=B[m],比如A[n]=a,B[m]=b,则a和b至多有一个会出现在最后的解里(对解有贡献)。因为...

2019-02-14 16:15:43 216

原创 Algorithm QuickSort快速排序

Reference快速排序(过程图解)快排其实比归并写起来要容易一些。核心原理就是选取一个基准数,然后把比他小的放到左边,比他大的放到右边,然后再同样处理两边,递归,最终排好序。实际操作时并没有这么做,我们忽略基准数,从两边开始检查,把左边较大的和右边较小的交换,最后两者相遇时再把基准数交换过来。这样相对位置关系可以保证。核心代码:swap函数不是必需的,图个省事,C++中可以方便地使...

2019-02-12 11:20:42 216

原创 Algorithm Hanoi汉诺塔

Reference「递归练习」汉诺塔_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili其实汉诺塔老早就写过了,不论是学Python还是C时,老师都讲过。汉诺塔也是我头一次体会到Python的效率真的被C甩好几条街……实现的重点就在于,不要去管上层的盘子怎么移动,只去关心最底层盘子的移动和计数。用了全局变量cnt来计数,src、mid、dst分别表示源盘子,辅助盘子和目标盘子。接口:...

2019-02-11 16:19:17 162

原创 Algorithm MergeSort归并排序

Reference:归并排序_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili其实有时候算法真正实现出来了再去看,也没当初自己觉得的那么难。讲解用的C++,底下有用C实现了一下,其实没差。具体的内容看顶部的视频,讲的很细。归并排序名字已经说明了内涵,归指递归,将问题的规模缩小到只有一个元素时去解决,并指合并,将小的数组有序交叉合并,最后就能得到排序好的数组。同样地,其实现也是分两步,...

2019-02-11 15:36:33 251

空空如也

空空如也

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

TA关注的人

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