自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 [数据结构]大根堆小根堆插入操作

堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质:1.堆总是一棵完全二叉树。2.堆中某个节点的值总是不大于或不小于其父节点的值。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等。以下是C/C++大根堆小根堆具体插入方法。后序会深入解析堆结构。大根堆插入操作:void HeapAdju...

2018-04-23 22:42:25 1270

原创 [爬虫]python自动调用浏览器访问网页增加访问量

该程序主要是为了增长访问量而写的,主要针对一些访问量与用户信息无关的网页,比如CSDN。当然前提是python安装相应的库。原理很简单,没有用到什么高端的爬虫技术,没有用到正则表达式什么的。其实就是调用你的浏览器,然后程序自动帮你打开你的博客网页,隔一段时间自动关闭,以此循环,刷访问量。不多说了,直接贴代码吧。import webbrowser as webimport timeimport ...

2018-04-22 23:07:01 1815 1

原创 [杂项项目]C语言打造智能AI小游戏——三子棋

三子棋具体就不多介绍了,AI棋用O表示,我们的棋用X表示。先手后手自己选。这里主要说一下AI算法。首先AI会对整个棋盘MAP[3][3]进行遍历,每个格子都有一个权值weight[i][j]。权值的第一次计算方法是对每一行i每一列j进行计算,计算基于这一格有几种获胜的路线。例如没有走时,9个格的权值为:[][][]     3 2 3[][][]     2 4 2[][][]     3 2 3...

2018-04-22 21:51:38 703

原创 [排序]求解第k大分值

描述:Arch0n老师is a rich man, 他靠自己的才华和智商年纪轻轻就赚了不少钱。为了训练自己的智商,他经常玩一些interesting的游戏来训练自己的智商,比如什么RGB游戏,还有和妹子一块玩Don't Starve。言归正传,今天他又发明了一个新的interesting game。Ar老师手上有一堆卡牌,然后卡牌上写了一个数字Ai(正整数),当前他有n张牌,然后他总是随机取出两张...

2018-04-21 23:42:03 177

原创 [杂项项目]C语言实现小游戏——控制台扫雷

程序比较简单,需要输入坐标x,y进行翻牌。当时现场演示时不到50分钟边讲边写的,实现了基本的扫雷功能,只是没有计分计时排名之类的辅助功能。由于程序较简单,也没必要再加工了。另外本程序的特点是第一次输入一定不会是雷。此外,如果翻牌后周围没有雷,即为0,将会搜索周围所以为0的牌。此处用到了dfs。仅供参考。项目版:mine.h#pragma once#define BOOM 10#define S...

2018-04-20 23:01:26 694 1

原创 [杂项项目]纯C语言实现随机生成数独九宫格

一年前的程序,可以生成一个数独的九宫格。当时想这种方法想了3天,终于实现了。由于当时刚熟悉指针,因此指针用的比较多。本人比较懒,先把代码贴出来,后序补充具体实现方法。#include <stdio.h>#include <stdlib.h>#include <time.h>void main(){ int a[9][9] = { 0 }; int ...

2018-04-20 22:53:45 2559 1

原创 [杂项项目]纯C语言实现控制台小游戏——数字拼图

一年前写的小游戏,当时感觉小有成就,现在发现缺陷真的很多。不禁感叹,当时为什么会用那么多goto呢。在这里真的建议大家不要用goto。只是现在懒得改了,毕竟是小程序。贴出来供大家参考。如果有时间后序再添加注释。如有问题欢迎评论。#include <stdio.h>#include <stdlib.h>#include<math.h>#include &lt...

2018-04-20 22:48:10 744 1

原创 [贪心]二分法解决最小值最大化问题经典例题-POJ2456疯牛

题意:有n个牛栏,选m个放进牛,相当于一条线段上有 n 个点,选取 m 个点,使得相邻点之间的最小距离值最大。首先给出n个牛棚的位置,那么每个牛棚之间的最小距离是和相邻两个牛棚之间的距离。因此,先给牛棚的位置排个序。将第一头牛放在0号位置,二分法不断缩进距离d,如果前一头牛放到了xi处,就要将下一头放到满足xi+d<=xj的最小的xj处。这样保证最近的两头牛之间的距离都不会比当前的最小值小,...

2018-04-20 22:27:16 612

原创 [BFS]正向BFS+hash解决八码问题

八数码问题,可以用单向广搜、双向广搜、A*、IDA等多种方法求解。具体可以参考:八数码的八境界DescriptionThe 15-puzzle has been around for over 100 years; even if you don't know it by that name, you've seen it. It is constructed with 15 sliding ti...

2018-04-18 11:41:06 399

原创 [位运算]dfs+位运算解决N皇后问题

在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。你的任务是,对于给定的N,求出有多少种合法的放置方法。共有若干行,表示棋盘和皇后的数量;如果N=0,表示结束。分析:本篇文章重点介绍位运算解决N皇后的思想,并不是解决特定的问题。和普通算法一样,这是一个递归过程,程序一行一行地寻找可以放皇后的地方。过程带三个参数,r...

2018-04-13 23:11:06 533

原创 [位运算]位运算的4个简单应用

1. 不用任何比较判断两个数中大的那个数我们将两个数做差,得到另一个数,判断这个数的符号位就可以了。当然,不能直接使用判断语句,所以我们使用位运算来操作。2. 两个相同的数异或结果等于0。就这道题而言,在运算过程中会产生一个中间值,即a与b的异或结果,a异或b再异或b就会等于a,如果第二次异或a就会等于b。所以直接三个异或就可以搞定3. 整数的二进制中有多少个1每次循环采用n&=(n-1)...

2018-04-13 20:17:46 806

原创 C语言允许初始化列表中末尾出现多余的逗号

C语言允许初始化列表中出现多余的逗号,例如:int days[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, };为什么这种特性是有用的?#include <stdio.h> int main(int argc,char** argv){ enum qs{ Va = 5, Vb, ...

2018-04-01 23:27:16 1503

原创 树的遍历(根据后序遍历中序遍历推出层序遍历)

对于二叉树的遍历,分为深度优先遍历与广度优先遍历,广度优先遍历有时又称作层序遍历。而深度优先遍历又分为前序遍历,中序遍历和后序遍历。三者之间的区别主要在于根结点的遍历顺序。前序遍历的顺序是根结点->左子树->右子树,中序遍历顺序是左子树->根结点->右子树,后序遍历顺序是左子树->右子树->根结点。现在给出树的后序遍历与中序遍历,要求写出该树的层序遍历。以下是p...

2018-03-29 20:15:22 1419 1

原创 C/C++八进制赋值与输入常见陷阱

在C语言及C++中,一个整形数值前如果有一个数字0,则代表该整形数值为八进制数。例如int a,a = 010,则a的十进制数值为8,八进制数值为10。但是在输入a的时候,输入010,如果用scanf(“%d”,&a),则将会被当做十进制10识别。而在c++中使用cout<<a时,也将会被默认为十进制输入。以下是测试用例。#include<iostream>usi...

2018-03-29 19:01:30 1747

原创 [数据结构]L2-022. 重排链表

L2-022. 重排链表给定一个单链表 L1→L2→...→Ln-1→Ln,请编写程序将链表重新排列为 Ln→L1→Ln-1→L2→...。例如:给定L为1→2→3→4→5→6,则输出应该为6→1→5→2→4→3。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址和结点总个数,即正整数N (<= 105)。结点的地址是5位非负整数,NULL地址用-1表示。接下来有N行...

2018-03-28 21:44:38 367

原创 [并查集]L2-024. 部落

L2-024. 部落时间限制120 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越在一个社区里,每个人都有自己的小圈子,还可能同时属于很多不同的朋友圈。我们认为朋友的朋友都算在一个部落里,于是要请你统计一下,在一个给定社区中,到底有多少个互不相交的部落?并且检查任意两个人是否属于同一个部落。输入格式:输入在第一行给出一个正整数N(<= 104),是已知小...

2018-03-28 21:32:34 185

原创 C++结构体内部初始化

我都知道,c语言中结构体内部是不支持初始化的。如果要初始化结构体,可以在声明变量时进行初始化。例如:struct Test{ int a; char b; double c;};Test test_1 = { 1, 'a', 0 };然而c++中结构体内部在声明变量的同时可以声明函数,这为结构体内部初始化提供了很大的便利。因此上面用例可以写成:struct Test{...

2018-03-28 11:34:55 2689

原创 [模拟]来一瓶82年拉菲(酒杯问题)

问题描述:悠神最近过生日,朋友纷纷来贺。现有一瓶82年拉菲与若干酒杯。酒杯呈三角形酒塔摆放,即每一个酒杯摆放在下一层两个酒杯中间,最下面一层酒杯摆放在桌面上。共有N(1<=N<=20)层酒杯,第k层共有k个酒杯。悠神将拉菲倒进第一层的酒杯中,速度为1杯/s,倒满后酒会向左右两个方向溢出,假设会全部溢出到这个酒杯下面相邻的两个酒杯中。然而悠神有洁癖,他不喜欢浪费,更不喜欢浸湿他心爱的桌布...

2018-03-28 11:23:18 368

原创 [BFS]愿天下有情人都是失散多年的兄妹

题目概述:L2-016. 愿天下有情人都是失散多年的兄妹时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越呵呵。大家都知道五服以内不得通婚,即两个人最近的共同祖先如果在五代以内(即本人、父母、祖父母、曾祖父母、高祖父母)则不可通婚。本题就请你帮助一对有情人判断一下,他们究竟是否可以成婚?输入格式:输入第一行给出一个正整数N(2 <= N &l...

2018-03-26 23:35:06 184

原创 vector的嵌套实现二维数组,解决矩阵相乘问题

定义vector的元素可以是一个vector。比如, vector<vector<int>> 即表示一个二维int数组,里层的vector表示第一维, 外层的vector表示第二维。问题描述:L1-048. 矩阵A乘以B时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,...

2018-03-26 16:45:58 1060

转载 BFS与DFS的用途与选择

1.BFS是用来搜索最短径路的解是比较合适的,比如求最少步数的解,最少交换次数的解,因为BFS搜索过程中遇到的解一定是离根最近的,所以遇到一个解,一定就是最优解,此时搜索算法可以终止。这个时候不适宜使用DFS,因为DFS搜索到的解不一定是离根最近的,只有全局搜索完毕,才能从所有解中找出离根的最近的解。(当然这个DFS的不足,可以使用迭代加深搜索ID-DFS去弥补)2.空间优劣上,DFS是有优势的,...

2018-02-01 16:21:15 1248

转载 C++类的3种继承方式

简单地说下C++类的3种继承方式,分别是public继承,protected继承,private继承。最常用的还是public继承。class默认的是private继承,它的member如果没写权限也是默认private。struct则相反,默认的是public继承。结合下面的图示和代码,对C++的继承就有了比较清晰的认识了。继承之后,derived class 继承过后的member的属性就是图...

2018-01-24 20:15:07 116

转载 sstream和strstream的用法

在C++有两种字符串流,也称为数组I/O流,一种在 strstream 中定义,另一种在 sstream 中定义。它们实现的东西基本一样。strstream里包含:class strstreambuf;class istrstream;class ostrstream;class strstream;它们是基于C类型字符串char*编写的sstream中包含:class stringbuf;cla...

2018-01-24 13:31:04 609

转载 正则表达式练习题集(附答案)

前言                好久到没有去写关于正则表达式的总结了,虽然自己写了一些关于正则表达式的东西。但是           感觉上对正则表达式还停留在网上查找的阶段,对于大部分的人来说,很难写自己的正则表达式           对于正则表达式笔者也做过相关的总结。呃,过了一段时间还是模糊了。因此找一些练习题来找           回自己的记忆。                需要...

2018-01-21 18:41:35 10822 7

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