HarmonyOS鸿蒙最新数据结构课程设计实习报告_数据结构实习内容,网易游戏面经

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  1. 复习MFC的相关操作。
  2. 巩固《数据结构》的基础知识并实现:List, Stack. Sort。
  3. 熟练调用系统类库,加深对软件本质的理解。
  4. 理解多态,宏的意义,并运用。

二.设计任务

根据《数据结构》课程设计的结构体系,基于MFC的SDI应用程序。利用树状图实现各级菜单,并实现对应的消息响应。线性表,一元多项式相加,栈的应用,排序都基于对话框。

三.程序结构

1.程序结构图:

2.类图:

3.类关系图

4.FileView和TreeView

用FileView显示数据,TreeView处理消息响应;有代表性的代码如下:

voidCFileView::FillFileView()

{

HTREEITEM hRoot = m_wndFileView.InsertItem(_T(“数据结构”),0, 0);

m_wndFileView.SetItemState(hRoot,TVIS_BOLD,TVIS_BOLD);

HTREEITEM hSrc = m_wndFileView.InsertItem(_T(“绪论”),0, 0, hRoot);

m_wndFileView.InsertItem(_T(“什么是数据结构”),2,2, hSrc);

m_wndFileView.InsertItem(_T(“基本概念和术语”),2, 2, hSrc);

m_wndFileView.InsertItem(_T(“抽象数据类型的表示和实现”),2,2 ,hSrc);

m_wndFileView.InsertItem(_T(“算法和算法分析”),2, 2, hSrc);

m_wndFileView.Expand(hRoot,TVE_EXPAND);

m_wndFileView.Expand(hSrc,TVE_EXPAND);

……

}

voidCViewTree::OnNMClick(NMHDR *pNMHDR,LRESULT *pResult)

{

DWORD dwpos = GetMessagePos();

TVHITTESTINFO ht = { 0 };

ht.pt.x =GET_X_LPARAM(dwpos);

ht.pt.y =GET_Y_LPARAM(dwpos);

::MapWindowPoints(HWND_DESKTOP,pNMHDR->hwndFrom,&ht.pt, 1);

TreeView_HitTest(pNMHDR->hwndFrom, &ht);

CString sel =this->GetItemText(ht.hItem);

#defineJUDGE(x)if(sel==x)

JUDGE(_T(“图的定义和术语”))

AfxMessageBox(_T(“图:是一种较线性表和树更为复杂的数据结构。结点直接的关系可以是任意的,图中任意两个数据元素之间都可能相关。\n顶点:数据元素。\n弧:两个顶点之间的关系。\n弧头:弧的终端点。\n弧尾:弧的初始点。\n有向图:有指向的图。\n无向图:没有指向的图。\n连通图:任意两个顶点都连通。”));

JUDGE(_T(“线性表的顺序表示和实现”))

{

CListDLg*m_listDlg =newCListDLg();

m_listDlg->DoModal();

}

JUDGE(_T(“线性表的链式表示和实现”))

{

CListDLg*m_SqListDlg =newCListDLg();

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 21
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言的数据结构面经主要包括C语言基础、操作系统、计算机网络、数据结构与算法、设计模式等内容。 在C语言的面经中,C++的增强特性也是常见的一部分,比如引用、类与对象、模板、智能指针等,还有STL模板库等。这些特性使得C++的使用更加便捷和安全。 此外,C++11引入了一些新特性,比如std::enable_if和SFINAE。SFINAE是Substitution failure is not an error的缩写,意思是匹配失败不是错误。简单来说,当调用模板函数时,编译器会根据传入参数推导最合适的模板函数,在这个推导过程中,如果某些模板函数的推导结果是编译无法通过的,只要有一个可以正确推导出来的模板函数,那些推导结果可能引发编译错误的模板函数并不会导致整个编译错误。 在面试中,还会涉及到指向数据成员的指针。C++中可以使用指向类成员函数的指针来调用函数,也可以使用指向类数据成员的指针来访问数据成员。 多线程也是面试中常见的一个话题,关于多线程的问题,需要考虑线程安全性。在C++中,需要采取一些措施来保证线程安全,比如使用互斥锁、条件变量等。 综上所述,C语言的数据结构面经主要围绕C语言基础、操作系统、计算机网络、数据结构与算法、设计模式等内容展开,并且会涉及到C++的一些增强特性,以及指向数据成员的指针和多线程的相关知识。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [C++开发工程师面经总结](https://blog.csdn.net/Arcofcosmos/article/details/127156504)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [2020秋招_C++基础、数据结构基础面经记录](https://blog.csdn.net/XindaBlack/article/details/107120742)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值