9.28
一,基本上一样的代码没有输出我也很蛋疼啊。。
是关于小根堆的
感觉关键是那个友元函数,
friend oprator <(event a,event b)
{
return a.t>b.t;
}
其他的结构就和这个题目有关系了
二,关于入门组,8.15
1,头文件按algorithm不知道用再哪
查了一下,是max用了。
2,string中的size函数不是和其他的不同嘛
关于这个长度的东西我们起码是知道3个的
strlen(),length(),sizof(),size(),哦,这么说是四个了。
length是考虑到C中的strlen而再C++中设置的。
至于length和size的区别,人家说只是个身份上的区别,意思就是就随便用。
size是考虑到stl作为容器什么的。
这几个的用法>.<
根据我之前的推测,size是带后面的换行的,如果你对它计数的话。
3,然后2进制和16进制转换的大思想是没有什么问题的。
4,再就是这个内部机制了。。我觉得怪巧妙地。。这个机制也可以轻松地用于已知二进制数而计算10进制数。循环里面是很巧妙,外面的机制也完美=地解决了最前面不足4位的情况,你要知道我当时还得再多几步去解决不足4位的情况。。。
外层循环就涉及到了你外层循环初始条件的设定和循环限制的设定了。。
内层的清空计数。
5,除了这些以外,这个字符串相加的操作也很迷啊。。。额不对,是字符串加字符。。但是你定义的是string..定义的是字符串变量。。所以好像也能说地过去。。。
三,今天再用小根堆解决了一下合并果子的问题。。话说这题。。简直你会小根堆就完全没难度啊。。
但是我再写小根堆的时候确实出现了许多问题。
1,你肯定是要用小根堆的,同时你也要用STL 中的堆的,但是你头文件都没有..<queue>和<string>这就很。。。emmmm。。。
2,关于命名空间和main函数之间的这个转换类的结构体,
起码有三个东西,一个是你定义的放进去的变量? 一个是友元函数。一个是。。所谓的构造函数也就是用来初始化。这个里面东西好像可以放多点取决于你的用处。
3,再就是这个声明,这个我倒是没有错。我觉得你该总结一套这个用法。
4,你存入数据的时候不是单纯地存入这个数据,而是你得外面套一层你那个转换函数的皮。
5,再就是你用top函数的时候是这样的 a=h.top().x;后面加个点这个东西
但是你在大根堆的时候并没有这样,这应该是和你那个转换函数有挺大关系。