- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
acm数据结构总结
Pku acm 3253 Fence Repair 数据结构题目总结(一) ----哈夫曼数?这是一个哈夫曼数的简单例子,算法很简单,但提交了很多次才ac,但每一个版本都有很多收获。 1.利用Java的集合类以及排序的方法,简单的实现其中的排序,将所有的num添加到集合中,然后排序,提取第1.2个元素,然后相加,删除这两个元素,添加这两个元素的和,然 后排序,直到集合的元素个数给1.另外,在该程序中使用了jdk1.5支持的输入,大大简化了输入:Scanner cin = new Scanner(System.in);int count = cin.nextInt();核心的代码如下:Collections.sort(array);int sum=0,a,b;while(array.size()!=1){?a = array.get(0);?b = array.get(1);?array.add(a+b);?array.remove(0);?array.remove(1);//注意这里不是1,因为删除一个后集合原来的第1个元素变为了第0个元素?sum += a+b;?Collections.sort(array);}System.out.println(sum); 但是这个实现虽然简单,但超时,运行需要2s多,而题目要求1s 2.为了避免排序,采用空间换时间的策略.想法是这样的:建立一个数组length[],该数组的第i个元素表示:集合中有该元素的个数,然后从小到大选出最小的a和b,将length [a]--,length[b]--,length[a+b]++,直到数组中没有非零元素.核心代码如下:??? scanf(%d,n);??? for(i=1;i=n;i++)??? {??????? scanf(%d,temp);??????? length[temp]++;??? }??? for(i=1;in;i++)??? {??????? while(!length[j])??????????? j++;??????? a=j;??????? length[j]--;??????? while(!length[j])??????????? j++;??????? b=j;??????? length[j]--;??????? length[a+b]++;??????? sum += a+b;??? }结果运行中错误,原因是数组开的不够大,题目要求有20000个数字,每个数字最大为50000,如果要满足题目要求length长度为50000*20000,无法开如此大的数组. 3.由于数组中有大量的插入和删除的操作,准备采用链表存储,输入的结果是一个由小到大排列的链表,然后删除前两个数字,插入两个数字的和,按顺序插入到链表中.核心代码如下:???但是依然超时. for(i=1;i=n;i++)??? {?//动态分配待插入节点存储空间??????? struct LNode* p_insert=(struct LNode*)malloc(sizeof(struct LNode));??????? scanf(%d,p_insert-data);??? ??????? p_head=head;?//插入前链表为空???????? if(head-next==NULL)??????? {??????????? p_head-next=p_insert;p_insert-next=NULL;??????? }??????? else??????? {???? //查找该插入的地方???????????? while(p_head-datap_insert-datap_head-next!=NULL)??????????? {??????????????? p_temp=p_head;??????????????? p_head=p_head-next;??????????? }???? //不是插入到链表结尾???????????? if(p_head-data=p_insert-data)??????????? {??????????????? p_temp-next=p_insert;??????????????? p_insert-next=p_head;??????????? }???? //插入到链表结尾???????????? else??????????? {??????????????? p_head-next=p_insert;??????????????? p_insert-next
您可能关注的文档
- '名人我想对你说'话题作文导写与示例.doc
- ----业务流程整理培训.ppt
- -JSS数字式时间继电器的设计.doc
- -LCD Dricer IC工作介紹_簡.ppt
- -水文地质与工程专业外文文献翻译-其他专业.doc
- -教育公共基础知识复习资料汇总.doc
- -金融学专业外文翻译----股票市场经济活动的行为方式-金融财政.doc
- ==>版<==数字化变电站中合并单元的工程应用.ppt
- A Contrastive Study of Valentine’s Day and the Double-Seventh Day.doc
- -第六章经济法主体的一般原理.ppt
- 2025年下半年四川省广播电视局下属事业单位考试招聘30人备考题库附答案.docx
- 2025年下半年四川甘孜州考试招聘中小学、幼儿园教师报考人数备考题库附答案.docx
- 2025及未来5年喷塑生产线项目投资价值分析报告.docx
- 2025年下半年四川成都交通投资集团有限公司第一批次校园招聘19人备考题库附答案.docx
- 2025年下半年四川成都市金堂县教育局所属事业单位考核招聘教育专业技术人员18人备考题库附答案.docx
- 2025年下半年四川广元市事业单位考试招聘201人参考题库附答案.docx
- 2025年下半年四川广元市事业单位考试招聘201人参考题库附答案.docx
- 2025年下半年四川广元市事业单位考试招聘201人参考题库附答案.docx
- 2025年下半年四川南充市南部县中医医院考调笔试备考题库附答案.docx
- 2025年下半年四川内江市事业单位招才引智考核招聘62人(成都场)备考题库附答案.docx
有哪些信誉好的足球投注网站
文档评论(0)