运筹优化算法面试题——回忆版_zhangkkit的博客-程序员秘密_运筹优化程序阅读题

技术标签: 算法  智能调度  

一次惨痛的运筹优化算法面试经历

项目方面

  我有三个项目经验,分别是:一个多目标进化算法的子算法,一个城际网约车订单分配算法,一个实习过程中提出的多主体寻路算法。

项目序号 项目名称 提问内容 回答
1 基于自适应局部搜索链的多目标模因算法 1)多目标解的评价标准?2)类比于EA(种群的初始化,交叉、变异、选择等),说说提出的算法的对应关系;3)解的构造方法。 1)帕累托占优;
2 网约车智能调度系统算法与应用研究      此项目是实际应用项目?问题是什么?现在有没有应用。 具体问题的描述

基础知识

1.STL相关知识
  STL:(standard template libaray --标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构和算法的软件框架。
  中心思想:将数据容器和算法分隔开,彼此独立设计,最后再用黏合剂将它们撮合在一起。容器和算法的泛型化,可以用C++的class template和function template来实现,而二者的黏合剂就是迭代器了。
  六大组件:容器(Containers)、算法(algorithms)、迭代器(iterators)、仿函数(functors)、适配器(配接器 adapters)和配置器(allocators)。

2.拓扑排序的思想
  先统计所有节点的入度,对于入度为0的节点就可以分离出来,然后把这个节点指向的节点的入度减一。一直做该操作,直到所有的节点都被分离出来。

3.在排序算法中,时间复杂度为 O ( n l o g n ) O(nlogn) O(nlogn)的算法有哪些?时间复杂度为 O ( n ) O(n) O(n)的算法有哪些?
O(nlogn):shell、快速、堆和归并。
O(n):桶排序、计数排序和基数排序
4,图的遍历算法有哪些?深度优先遍历与广度优先遍历的比较?
实现方式:深度优先遍历用栈,广度优先遍历用队列;
与树的遍历关系:深度优先遍历对应树的先序、中序和后序三种遍历, 广度优先遍历对就树的层次遍历。
应用:深度优先遍历可以用来判断有向图是否有环。
5.迪杰特斯拉的原理?
在这里插入图片描述
1)指定一个节点,例如我们要计算 ‘A’ 到其他节点的最短路径
2)引入两个集合(S、U),S集合包含已求出的最短路径的点(以及相应的最短长度),U集合包含未求出最短路径的点(以及A到该点的路径,注意 如上图所示,A->C由于没有直接相连 初始时为∞)
3)初始化两个集合,S集合初始时 只有当前要计算的节点,A->A = 0,U集合初始时为 A->B = 4, A->C = ∞, A->D = 2, A->E = ∞
4)从U集合中找出路径最短的点,加入S集合,例如 A->D = 2
5)更新U集合路径,if ( ‘D 到 B,C,E 的距离’ + ‘AD 距离’ < ‘A 到 B,C,E 的距离’ ) 则更新U
6)循环执行 4、5 两步骤,直至遍历结束,得到A 到其他节点的最短路径
6.红黑树的特性?左红右黑是什么鬼?
以平衡二叉树实现,左右子树是最大深度差为多少呢

总结

  不想多说,是自己菜。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhangkkit/article/details/106390422

智能推荐

python 详解re模块_weixin_30627341的博客-程序员秘密

Python正则表达式指南本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教程。注意:本文基于Python2.4完成;如果看到不明白的词汇请记得百度谷歌或维基,whatever。尊重作者的劳动,转载请注明作者及原文地址 &...

最大岛屿_dengjing1200的博客-程序员秘密

最大岛屿时间限制:1000ms | 内存限制:65535KB难度:2描述神秘的海洋,惊险的探险之路,打捞海底宝藏,激烈的海战,海盗劫富等等。加勒比海盗,你知道吧?杰克船长驾驶着自己的的战船黑珍珠1号要...

pyinstaller打包所遇到的问题与解决方法_svg onload=alert(1)的博客-程序员秘密

最近用pyqt5写了一个程序,在最后的打包发布时候,需要程序自动更新,但由于之前使用的是-D参数打包的,出现了各种问题,后面使用-F参数将所有需要的依赖包都打包到一个文件中,但需要注意的是-F参数只是将所有的依赖库打包到同一文件中,编写程序过程中,使用的各种图片文件以及资源文件还是需要直接复制到打包目录的,这样才能开始使用。...

springMVC从发送hello请求到响应的执行流程分析_穿条秋裤到处跑的博客-程序员秘密

启动tomcat服务器后,借助springMVC框架,我们可以很方便高效控制客户端发出的各种请求。分析请求执行流程前,我们需要了解一下服务器启动时,都做了什么。tomcat服务器启动加载项加载web.xml文件这一点大家应该都熟知了,不多赘述。加载Servlet我们不妨回忆一下web.xml的部分内容。&lt;servlet&gt; &lt;servlet-name&gt;...

Android studio中NDK开发(三)——JNI层日志打印_Xiongjiayo的博客-程序员秘密

一、前言JNI层是Java和C/C++的桥梁,在Java层中我们通常会使用Log.v()/Log.e()等来进行日志打印,在C中使用printf方法,但在JNI层这些方法是无法在Android studio中下的Logcat中显示的,需要用到另外的库,这个已经打包在log.h头文件中。 二、步骤1、在C/C++文件,即.c或.cpp文件中引入log.h头文件#include ...

Vaa3D_windows基于MATLAB批量运行插件_输入多组图片多组参数_以APP2为例_远野贵树97的博客-程序员秘密

首先参考Vaa3D_批量运行插件方法https://blog.csdn.net/jujiyu6446/article/details/102553093基本原理基本的原理就是通过控制台程序调用dofuncA:在windows下,可以通过1.直接在cmd控制台下手动输入命令2.bat 文件调用3.python 、 matlab等其他语言调用dos命令,简介调用控制台程序等方式达到...

随便推点

PyQt5获取QWebEngineView的cookie_pyqt5 获取cookie_做我的code吧的博客-程序员秘密

由于工作需求,需要获取自己写的QWebEngineView的cookie,搞了两天,百度了好久,找了很多方法,都没有解决,PyQt5的文档实在是太少了,有的基本上都是入门的,高阶一点的组件讲的太少,后来有幸看到一位大神的GitHub,终于有了点思路,先祭上大神的GitHub地址:https://github.com/892768447/PyQt/blob/master/%E6%B5%8F%E8...

为什么程序员的社会地位不高_he_wen_jian的博客-程序员秘密

到目前为止,在过去60年中在世界排名前20的国家中,没有哪条街是以程序员或者计算机科学家的名字命名的。        没有任何一个世界主要城市拥有程序员或者计算机科学家的雕像。        没有程序员或者计算机科学家获得过总统奖章(Presidential Medal)或者国会金质奖章(Congressional Gold Medal)。        没有国

十个Python图像处理工具_程序员阿城的博客-程序员秘密

这些Python库提供了一种简单直观的方法来转换图像并理解底层数据。今天的世界充满了数据,图像是这些数据的重要组成部分。但是,在使用它们之前,必须对这些数字图像进行处理 - 分析和操作,以提高其质量或提取一些可以使用的信息。常见的图像处理任务包括显示; 基本操作如裁剪,翻转,旋转等;;图像分割,分类和特征提取;图像恢复;图像识别。Python是这些图像处理任务的绝佳选择,因为它作为一种科学...

selenium切换iframe框架案例——翻页爬取网易云音乐歌单作者和名称_夜的乄第七章的博客-程序员秘密

翻页爬取网易云音乐歌单作者和标题案例目的:通过翻页selenium操作网易云音乐,介绍如何切换iframe框架以及如何使用selenium定位数据所在的节点。代码功能:输入下载的数据页数,自动获取歌单中歌曲名称以及作者找到目标的url:右键检查,找到歌单中歌曲名称和作者所在的节点位置:通过节点位置,我们可以得到数据的xpath语法:但是,注意,我们需要的歌单名称和作者是在iframe框架的。意思也就是他们采用的是网页套网页的方式。因此,我们需要切换到iframe框架下才能提取到目标数据

linux+ppptp+客户端,一直连不上网,等待PPP客户端连接_旻言的博客-程序员秘密

被同样问题折腾好久进入路由器后台后,找到高级设置--外部网络(WAN)----然后在右边页面找到:[不主动发送 lcp-echo(off)],选择“是”[自适应LCP回应间隔],选择“是”****************************有个坛友的分析:----------------------------------我是分割线楼主苦逼程序员一枚,也是技术宅一个,入手的是华硕RT-AC66...

python聚类 画三维图_python 三维聚类_qnczmf的博客-程序员秘密

import matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dfig = plt.figure()ax = fig.add_subplot(111, projection='3d')ax.scatter(x, y, z, c=y_pred)plt.title(&quot;KMeans (N = 5)&quot;);ax.s...

推荐文章

热门文章

相关标签