《项目挑战: 学校微课平台推荐功能设计-教学设计2(表格式).docx》由会员分享,可在线阅读,更多相关《项目挑战: 学校微课平台推荐功能设计-教学设计2(表格式).docx(4页珍藏版)》请在优知文库上搜索。
1、教学设计课程基本信息课庭第二率数组与链衣琪打挑战:学校微课平台推荐功能设计教学目标1 .理解数组和链走的区别2 .掌握在实际顼H中选择合适的数据结构工堂提在数组和读表在程序中的使用教学内容教学理点:1 .设计不同的推荐要求并能选用符应的数据结构(数缎、SS衣)2 .学握花程序中果据实际情况.为数级和锌我没计合理的数据内容教学难点:1 .设计有创慰且实用的推荐期则2 .根据推苕算法设计合理的数据内容教学过程【任务导入】学校新建了一个微湿平台,用来展示校内教加和学生自制的微深。为了更好地服务师生,学校想增加微课平台的推荐功能,即当某个用户点播了某个微课后,平台会依据一定的规则推荐相关的微课。假如你
2、作为平台的设计者,现在需要你来开发实现这个微课平台的推荐功能,【建模讨论】当用户点播操作时,按照定的推荐规则有序推荐相关的微课视频,微课点播数据涉及用户,微课名称,播放时间等.问题1:有按照用户类型推荐,也可以按照微课类型推荐,请问还有其他推荐规则吗?问题2:所推荐的微课用数组存放还是用链表存放?两界各有什么不同?【设计数据的内容结构】利用关描字查询出记录,并用字典存储关键的数据,用数组进行提炼和排序用同样的方法也用链表进行类似的设if-【编写程序并测试】数组法:importpandasaspddf=pd.readcsv(,ukclick.csv)defprintdic(dic):max1=0
3、forkeyindie:ifIen(key)maxl:maxI=Ien(key)forkeyindie:print(key.rjust(maxi,*,dickey)n=len(lst)dic=(types=input(输入年级”)foriinrange(n):iflstil=types:if1sti2notindie:diclsti2=1else:diclsti2+=lprintdic(dic)InenU=H0,0*4foriinrange(4):forkey,valuesindie.items。:ifdickeymenui1andkey,valuesnotinmenu:menui=key,v
4、aluesprint(menu)输出展示略menu=head=。;P=In=len(dic)cnt=0并构建无序链表forkey,valuesindie.itoms():menu,append(key,values,p)p+=lmenu-12=-1print(die)defrclnk(lst,head,n):i=lwhile1sthead2!=-landiprint(*None*)才利用健农进行插入排序defIinksort(Ist):head=OJcur=Isthead2pre=headwhiIecur!=-1;1stpre2=-lp=headjnt=lstcur2v=lstcur1ifvl
5、stheadI:1stcur2=hoadhead=curelse:whilev=lstp1andp!=-I:q=pP=IStplstq2=cur1stcur2=pifP=T:pre=curcur=ntreturnheadhead=inksort(menu)rcInk(menu,head,4)输出展示略I评价标准请网据项目实施的过程.效果以及成果展示交流的结果,对自己完成项ri的情况进行客观的评价,井思考后续完善的方向把评价结果和完价方案侦号在下面的表格中评价条H说明律分(l0分)|评分主婴依据阐述信接完善方向格若批聘的选择我旗计逸探成设计的次若现M*易理”并切实可行(津;自行法计的找齐坦则可逢5*分依据内京M构设计议计的it撵内K姑构明A.X以满足抵苏Mul的要求M4t娓孑以龄证推若现射的正横世.MliJ(;1以上般展”构的线择逸桂的负桂”约与数*纣姓及挣存规划和适应找小金耳、调K及姑什fl小调式、这什成功.所好件据轩令珏嘉【评价】