![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
London_lj
XMU
展开
-
C语言位运算详解
位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型。C语言提供的位运算符列表:运算符 含义 描述& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0| 按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1转载 2014-10-14 23:35:04 · 655 阅读 · 0 评论 -
算法与数据结构第十一次作业 二着色问题
这道题有两种解法,一种是用并查集,还有一种是DFS对于第一种解法的思路是: 只要不形成环,就可二着色。 开两个数组,a用来存点,跟之前的并查集一样,每个连通域都用一个代表元素来表示。数组b用来存着色情况。 首先,初始化数组a,a[i]=i。初始化数组b,b[i]=0; 然后每次进来的两个数,若b[x]=b[y]=0,就分别上色1,-1。若原创 2014-12-14 19:41:29 · 1045 阅读 · 0 评论 -
算法与数据结构第十一次作业 Sins of a Solar Empire P 5
这是一道典型求单源最短路径的问题,用到Dijkstra算法直接贴代码了:#include #include using namespace std;#define Max 100001int Time[1001][1001];int dist[1001];int pre[1001];void Dijkstra(int v0,int n){ bool S[1001];//未原创 2014-12-13 17:03:47 · 714 阅读 · 0 评论 -
算法与数据结构第八次作业 count2
这次的题数据量很大,用hash也超时了,刚好学到字典,用了二叉搜索树。主要思路是:1.把要插入的第一个数字初始化为树根。2.每插入一个数字之前,把rank初始化为1。3.比当前结点小,往左走,同时当前结点的左子树数字个数加一。4.比当前结点大,往右走,同时把当前结点的自身数字个数和左子树数字个数加到rank。5.等于当前结点,当前结点自身数字个数加一。6.走到底,说原创 2014-12-12 16:24:52 · 684 阅读 · 0 评论 -
算法与数据结构第十次作业 Road
这是一题典型的并查集的题。之前自己在做的时候是参考了网上的代码的,虽然是看懂了,不过感觉参考的并不是自己的。这次复习,就自己敲了一下,开始也没AC,因为在查找函数这里出了一点问题,后来再看书,然后自己模拟了一下,差不多知道错在哪儿了,改了一下,就AC了。虽然没有用到路径压缩什么的最优方法,不过总算是懂了并查集是怎么回事。#include #include #include using n原创 2014-12-12 12:21:20 · 613 阅读 · 0 评论 -
算法与数据结构第八次作业 count1
这章的作业是第十章的内容,也就是字典。不过我实现这题的时候还是用了之前的数组方法,所以一直有三个点TEL。之前的算法的耗时主要在快排上,O(nlogn)。这次在复习,刚好前几天看hash,想说这题应该也可以用hash实现,下午敲了一下,AC了,把代码贴上来。#include #include #include #define LL __int64//注意这题分数可能为10^18,所以用i原创 2014-12-09 16:32:08 · 553 阅读 · 0 评论 -
算法与数据结构第七次作业 太阳帝国
继续hash,这题我自己也AC了,不过当时没用hash,先说一下我自己的思路。然后再贴大神的hash。这题显然是求交集的问题。我首先把第一个集合作为当前的交集。然后每进来一组集合,就和当前交集求一次交集。自己实现了一个求交集的函数,就是排序后,用两个游标非别指两个集合,遇到一样的就取出存到另一个集合中去。最后在把这个集合赋值给当前集合。显然还有一个去重的问题。在输出的时候,遇到一样的就原创 2014-12-08 13:42:21 · 652 阅读 · 0 评论 -
算法与数据结构第七次作业 路飞的难题
这次的作业是关于散列表的,老实说hash的思想是懂了,不过不太会用。作业我是用之前数组的方式做的。看了一下优秀代码,也是看懂了,不过让我自己实现还是不行。照着优秀代码敲了一下。由于选取的hash值比较奇怪,所以也没考虑到冲突的问题,总之算是水过吧。先把代码贴上来。今天要多敲几题hash。感觉考试还是很有可能考到。还有就是看到大一的学弟学妹们,才半年进步神速。学姐不能输#include #in原创 2014-12-08 11:48:33 · 627 阅读 · 0 评论 -
算法与数据结构第六次作业 渣五战的记忆力
最近复习到树的内容,之前的作业内容涉及到图论,之后再一起复习。这题我当时自己做的时候完全没用到树,其实我这块学得比较差,自己也没什么信心。今天优秀作业的讲评,了解一下思路,回来参考了一下学霸的代码,自己敲了一遍。之后要多练习一些树相关的题。先说思路: step1.先是建树,用一个结构体来记录每个结点的左儿子和右儿子。 step2.找到这棵树的根节点,我觉得这原创 2014-12-03 00:48:48 · 710 阅读 · 0 评论 -
算法与数据结构第三次作业 序列判断
这道题的思路原创 2014-11-05 00:34:46 · 701 阅读 · 0 评论 -
数据结构第二次作业 二分
首先是我自己的想法,原创 2014-11-05 00:05:17 · 1039 阅读 · 0 评论 -
算法与数据结构作业第二次 cards
刚开始做这题的时候完全原创 2014-11-05 00:08:14 · 617 阅读 · 0 评论 -
算法与数据结构第十次作业 征兵
这这其实是求最小生成树的问题,用到了kurskal算法。这题应该是求最大生成树,然后再减一下。贴代码#include #include #include #define MAX_E 50000#define MAX_V 20000#define COST 10000using namespace std;struct Edge{//定义边结构 int From;原创 2014-12-14 18:46:56 · 601 阅读 · 0 评论