文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
昨天数据结构课讲循环链表和双向链表,双向链表没什么意思,不写了;循环链表有个典型应用就是解约瑟夫问题(Josephus),这里用的典型题目是"猴子选大王"。
题目描述:n只猴子要选大王,选举方法如下:所有猴子按 1,2 ……… n 编号并按照顺序围成一圈,从第 k 个猴子起,由1开始报数,报到m时,该猴子就跳出圈外,下一只猴子再次由1开始报数,如此循环,直到圈内剩下一只猴子时,这只猴子就是大王。
输入数据:猴子总数n,起始报数的猴子编号k,出局数字m
输出数据:猴子的出队序列和猴子大王的编号
代码修改了一天才完成,第一次是用多个函数写的,但是发觉C语言没有引用参数这个特性,使得形参指针不能被直接修改,必须靠返回值来修改才行,这样太麻烦了...于是第二次写的时候就没有使用函数,直接在main()里完成了循环链表的操作,感觉应该没什么问题,哪位大牛看出问题跟我说下,thx...
阅读全文...
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
早晨起来发现还是阴天,洗漱完毕后老天极其不给面子地下起了小雨...难道我的出行计划就要就此夭折么...
还好天无绝人之路,在我就要放弃出门的一瞬间,雨停了...
69路,凤凰北,某酒店。
早茶,广东的一种传统文化。说起广东早茶的来源,要追溯到咸丰同治年间。当时广州有一种名为“一厘馆”的馆子,门口挂着写有“茶话”二字的木牌,供应茶水糕点,设施简陋,仅以几把木 桌木凳迎客,聊供路人歇脚谈话。后来出现了茶居,规模渐大,变成茶楼,此后广东人上茶楼喝早茶蔚然成风。直到今天,广东早茶中茶水已经成为配角,茶点却愈 发精致多样,这种传统文化随着广东经济的迅速发展不但没有消失的迹象,反而越来越成为广东人休闲生活中一道亮丽的风景线。
入乡随俗,来了珠海这么久都没有吃一回早茶,实在说不过去...
铁观音一壶,凤爪、虾饺、肉包、春卷一笼,肠粉一盘,牛百叶一碟,皮蛋瘦肉粥一碗...我不得不说广东人真的很会享受,这早点吃的...啧啧啧,味道真好,我都忘记拍照了...
上午十点,吃早茶的人依然络绎不绝,老人居多。珠海这里的消费比较高,我们一顿早茶消费近百元,由此也可以看出珠海人,尤其是老人,真有钱啊...
下午跑去珠海大会堂看了3月14日上映的新电影《七龙珠》(Dragon Ball ),感觉还可以,觉得周润发那个笑容还是很YD...我一直以为会有悟空变成超级赛亚人的剧情,可惜没有...顺便说一句,今天在珠海大会堂看电影的那个厅好小,最多做100人...
路经香洲烈士陵园,进去转了一圈,接受了一下爱国主义教育。看到一群有组织无纪律的穿着白衬衣打着红领带...哦不对,是打着红领巾的少先队员在参观烈士陵园,不禁勾起了我童年的回忆...略
再次路经野狸岛,又进去转了一圈,爬了一座小山,看看风景,恩...
我写不下去了!我被蚊子烦死了,从刚才回来到现在我已经拍死37只了...下楼买了电蚊水,结果却看到蚊子在电蚊水上面飞@#¥%@#¥@#...
发现拍的宿舍里到处都是残肢断臂有伤风化,我一怒之下上淘宝买了一个电蚊拍,算邮费¥35,你们死定了!...
PS.这一晚我一共拍死蚊子50只整...
阅读全文...
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
下午研究了一下全排列算法,然后发现C++的STL有一个函数可以方便地生成全排列,这就是next_permutation
在C++ Reference中查看了一下next_permutation的函数声明:
#include <algorithm>
bool next_permutation( iterator start, iterator end );
The next_permutation() function attempts to transform the given range of elements [start,end) into the next lexicographically greater permutation of elements. If it succeeds, it returns true, otherwise, it returns false.
从说明中可以看到 next_permutation 的返回值是布尔类型。按照提示写了一个标准C++程序:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| #include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
string str;
cin >> str;
sort(str.begin(), str.end());
cout << str << endl;
while (next_permutation(str.begin(), str.end()))
{
cout << str << endl;
}
return 0;
} |
其中还用到了 sort 函数和 string.begin()、string.end() ,函数声明如下:
#include <algorithm>
void sort( iterator start, iterator end );
sort函数可以使用NlogN的复杂度对参数范围内的数据进行排序。
#include <string>
iterator begin();
const_iterator begin() const;
#include <string>
iterator end();
const_iterator end() const;
string.begin()和string.end() 可以快速访问到字符串的首字符和尾字符。
在使用大数据测试的时候,发现标准C++的效率很差...换成C函数写一下,效率提升了不止一倍...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| #include <cstdio>
#include <algorithm>
#include <cstring>
#define MAX 100
using namespace std;
int main()
{
int length;
char str[MAX];
gets(str);
length = strlen(str);
sort(str, str + length);
puts(str);
while (next_permutation(str, str + length))
{
puts(str);
}
return 0;
} |
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
本来不想发这么水的代码,可是最近也没什么好写的...纯当凑文章数目吧...
这是一个线性表操作的小玩具,此篇为链表版本,也就是用指针和动态内存分配的。
阅读全文...
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
本来不想发这么水的代码,可是最近也没什么好写的...纯当凑文章数目吧...
这是一个线性表操作的小玩具,此篇为顺序表版本,也就是用数组的。
阅读全文...
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
昨天数据结构课在讲单链表,所以写了一份单链表的操作C语言实现代码。如果代码有什么不完善的地方,还请指出,谢谢。
操作中包括单链表的创建、插入、查找、删除和销毁等。
阅读全文...
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
开放系统互联参考模型-OSI(Open System Interconnection)
OSI参考模型采用了分层的结构化技术,将功能逻辑上划分开来,以使整个结构具有较高的灵活性。OSI参考模型共七层。
应用层(Application Layer)
表示层(Presentation Layer)
会话层(Session Layer)
传输层(Transport Layer)
网络层(Network Layer)
数据链路层(Data Link Layer)
物理层(Physical Layer)
有一句英文可以巧妙记忆OSI七层参考模型:
All people seem to need data process.
(所有的人看起来都需要进行数据处理)
从上到下,每个单词的最前一个字母与每一个层相对应。
还有一句比较雷人的中文:
阿婆死踢你的屁
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
今天是阴天,中午还飘了一点小雨,天气还算凉爽。中午吃饭的时候宿舍集体同意下午去爬凤凰山,因为大家都太无聊了...
起初我们在燕华苑后面绕了一圈,但没有发现上山路径,打电话给CRL问了下得知入口地址在粤华16栋那边...战略转移...
13:06我们开始正式爬山,GPS显示海拔9米。起初的一段路是有石阶的,因为那段路的下方就是凤凰山轻轨隧道。当然,本来我以为全程都有石阶的,因为以前爬过的"山"都是旅游景点...5分钟后山路就已经没有石阶铺垫了,完全都是被人踩出来的。此时的山路仅仅有一点陡峭,而且山路两边有树木可供攀扶,只是两腿要不断从树丛中穿过。
13:28我们爬到了第一个高压电塔下面,GPS显示海拔166米。在这里可以清晰地听到珠海国际赛车场传出的赛车轰鸣声,只是今天山上的雾气很大,能见度不是特别好。我们在这里休息的时候,看到了一个疑似"捕蛇者",是他指明了我们前进的方向...
接下来的山路就不是那么好走了,因为山路愈加陡峭,树木越来越少,而我个子高,重心高,无奈之下只能四肢驱动了...我跟舍友说,你们这叫登山,我这才叫爬山...
13:57我们登上了凤凰山顶,GPS显示海拔290米。山顶的风很大,感觉超级爽,身体四周云雾缭绕,宛如在仙境一般...在山顶大喊大叫是少不了的,至于喊的内容嘛...不便透露,嘿嘿...
偶有一架飞机飞过,感觉就像在身边一样,真想把它打下来...
下山的时候我们选择了一条和上山不同的路径,这条路同样也很陡,而且几乎没有树木,但是看起来好走一些...当然,我依旧需要四肢同用,而且很多路要蹲着滑下来...
15:06我们在GPS显示海拔39米的地方发现了一处山泉,这对于没有携带饮用水上山的我们无疑是一大宝藏,我们如亲吻大地般狂饮一番后(山泉水很甜,很好喝),继续上路...
15:13在穿越一片树林后,我们走出了凤凰山,只是出口地址是一个高尔夫球场(位于京师家园对面)。本来我们打算从高尔夫球场直接走出去的,但是却被一个保安拦住,让我们绕山回去...
看着那保安恶心的嘴脸,我有些气愤,但我现在没钱没势,我忍。如若有朝一日,我必将此地改作陵园。
绕山一圈我们来到了凤凰山轻轨隧道的面前,兜了几圈之后我们发现原来"北师大没有围栏"纯属无稽之谈...眼前就是校园,而我们却不得入,到处都是围栏和摄像头...无奈之下我们只好再次翻山...
中间有个小插曲,我们灭杀了一条长约40公分的小蛇,凶器是石头...
16:00我们回到了校园,有一点累,但是很爽。凤凰山其实有很多条路,也有很多好玩的地方我们没去,不过来日方长,下次继续!
以前从来没有像这样爬过山,用HZB的话说,这叫"野山"。感觉爬这样的山比起爬五岳或者黄山那样的旅游景点爽很多,因为那样的山已经没有变数,也没有冒险,而我们需要的,正是那种探险的刺激感...
上几张照片。
阅读全文...
最新评论