今日小计
比赛回来啦!!!终于回来了…这次比赛感慨万分纳,真的是,原来的我并不主张配合,但是现在我的观点有所改变,合作共赢,互利共赢,信息共享,这样能够利益最大化,而且有一点就是必须所有的信息或者是经验都需要传承,这一点,是毋庸置疑的,所以呢,接下来自己的电子工作室选人的时候需要好好的找一下。
再说会比赛,如果遇到一个情商智商双高的人么就更加完美了,不说了…还需要解释一下,为什么这五天没有更博,怨我其实是有时间的,哪怕是一点点的时间也是有的,距离上次更新都过去7天了吧,失败,但是,这次必须要要坚持更新,而且,每次保存…
最后说一点,这次比赛的成绩虽然不是很好,但是,遇到了一个喜欢的云南姑娘,感觉很好…后面暂时不能想了…学习Studying…进入正题.
本周的主要内容是:数据结构与算法相关问题与解决技巧
Python必刷题之四:
- 如何让字典保持有序
方法一:
例题:在某个系统中,记录每位选手的成绩,这次无线电比赛我觉得可以用哦,但是这个成绩需要按照顺序记录,以达到赛后查询,也就是说比赛结束后,按照排名的顺序依次打印选手的成绩,怎样实现?
解决过程:
d={}
d['Jim']=(1,35)
d['Bob']=(2,36)
d['Dill']=(3,40)
for i in d:
print(i)
输出结果:
Jim
Bob
Dill
在Python2中这个方法并不适用,当输出的时候会乱序,但是Python3之后可能这个进行了优化,先占位的输出靠前,但是,在Python2中海油另一种方法。
方法二:
使用collections.OrderedDict内置方法
from collections import OrderedDict
d=OrderedDict()
d['Jim']=(1,35)
d['Bob']=(2,36)
d['Dill']=(3,40)
for i in d:
print(i)
输出结果:
Jim
Bob
Dill
这个方法更加的优化了,这个程序的可读性,使得程序更加的可靠,因为在数据量更大的时候,也会是有序的。
编程模拟竞赛系统:
from time import time
from random import randint
from collections import OrderedDict
Player=list('ABCDEFG')
start=time()
Score=OrderedDict()
for i in range(8):
input()
p=Player.pop(randint(0,8-i))
end=time()
print(i+1,p,start-end)
Score[p]=(i+1,start-end)
for i in range(8):
print(Score)
输出结果:
1 B -0.23079514503479004
2 D -0.422995567321777343
G -0.60291433334350594
E -0.7731778621673584
这个输出解果是有错误的,所以需要我们Debug一下
睡觉前自己研究一下,这个问题…明天解决,希望自己挖的坑不会很多…
每日小结
每次说好的坚持希望自己言出必行,行出必果,这样才能追上甚至赶上那些理工大的学生,才能给自己爱的人想要的生活,希望最近能把自己的电子小队组建一下,好好整理一下自己,让自己更加有意义,让自己的生活更加的充实…
感谢遇见,一切都是最好的安排