当前位置: 首页 > news >正文

黑马-数据结构

一、数据结构与算法概述

1.1. 什么是数据结构

1.1.1. 数据结构的内容

        一般而言,数据结构的选择首先会从抽象数据类型的选择开始。一个设计良好的数据结构,应该在尽可能使用较少的时间与空间资源的前提下,为各种临界状态下的运行提供支持。数据结构可通过编程语言所提供的数据类型、引用及其他操作加以实现。

不同种类的数据结构适合于不同种类的应用,而部分甚至专门用于特定的作业任务。例如,当计算机网络依赖于路由表运作时,B树高度适用于数据库的封装。

在许多类型的程序设计中,选择适当的数据结构是一个主要的考虑因素。许多大型系统的构造经验表明,封装的困难程度与最终成果的质量与表现,都取决于是否选择了最优的数据结构。在许多时候,确定了数据结构后便能很容易地得到算法。而有些时候,思路则会颠倒过来:例如当某个关键作业需要特定数据结构下的算法时,会反过来确定其所使用的数据结构。然而,不管是哪种情况,数据结构的选择都是至关重要的。

系统构造的关键因素是数据结构而非算法的这一深入理解,导致了多种形式化的设计方法与编程语言的出现。绝大多数的语言都带有某种程度上的模块化思想,通过将数据结构的具体实现封装隐藏于受限接口之后的方法,来让不同的应用程序能够安全地重用这些数据结构。C++、Java、Python等面向对象的编程语言可使用类来完成这一功能。

因为数据结构的重要性毋庸置疑,现代编程语言及其运行环境在标准库中都包含了多种数据结构,例如C++标准模板库中的容器、Java集合框架以及微软的.NETFramework。

大多数数据结构都由数列、记录、可辨识联合、引用等基本类型构成。举例而言,可空引用(nullablereference,一种可被置空的引用)是引用与可辨识联合的结合体,而最简单的链式结构链表则是由记录与可空引用构成。

数据结构意味着接口或封装:一个数据结构可被视为两个函数之间的接口,或者是由数据类型联合组成的存储内容的访问方法封装。

1.1.2. 数据机构的设计

        应用数据结构解决生活中的问题的首要前提是研究应用什么数据结构解决生活中的问题。其分析步骤为:首先分析任务中的操作对象,即找出任务中涉及到的数据,从中总结和抽象出操作对象,并且分析操作对象之间的逻辑关系;其次根据任务中对操作对象的操作,研究应用何种存储方式来存储数据才能高效的执行程序并且占用较小的存储空间。选择数据结构的接口要最接近软件的需求。通常当有多个满足需要的接口数据结构实现时,可以根据比较他们的接口操作的运行时间以及数据结构消耗的空间来进行选择,有的时候时间和空间可以相互转换,比如可以用空间来交换操作的效率;最后在物理存储方式的基础上设计正确的算法实现操作,完成任务。

生活中所要处理的数据之间可以抽象出来不同的逻辑关系,建立不同的数据结构,但是针对实际问题要从中选取能够准确描述问题的基本特性并且易于实现的逻辑结构。例如八枚硬币中其中有一枚硬币是较为轻的,要求用一个天平将这枚轻的硬币判断出来,判断的过程采用将硬币分析两组或者三组,分别使用天平比较的方式来判断。这一判断过程可以用一个树形图来表示,所以可以将该问题抽象为判定树,构建树形结构。

根据选定的数据结构可以用不同的存储结构来实现。不同类型的数据结构常用的存储结构为顺序存储结构、链式存储结构、散列存储结构及索引存储结构。不同的存储结构具有不同的特点,大致上存在的差异在存储空间和运算效率两个方面。例如线性表的顺序存储结构与链式存储结构在存储空间上来对比,链式存储结构显然要多占用一部分存储空间。从运算效率上来对比,如果线性表需要进行大量的插入和删除操作的话,那么链式存储结构从执行效率上来讲要占有优势。而如果线性表要反复进行查询操作的话,顺序存储结构具备随机读写的特点,就比较适合这种情况。

确定数据的逻辑关系与存储结构的情况下,可以设计出不同的算法来实现应用。设计的算法应该是正确的算法。正确的算法的含义是:能够解决实际问题,输入的所有可能的合法的输入都能产生预期的正确的结果;能够在有穷的步骤内执行完程序;能够用最简短的语句最高效的完成任务。

1.2. 数据结构分类

二、算法分析

三、排序

四、线性表

五、符号表

六、树

七、堆

八、优先队列

九、并查集

十、图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-35345.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

MySQL 高级(2): 索引的概念,分类,性能分析

索引优化分析 索引的概念 MySQL 官方对索引的定义为:索引(Index)是帮助MySQL 高效获取数据的数据结构。 可以得到索引的本质:索引是数据结构。可以简单理解为排好序的快速查找数据结构。在数据之外,数据库系统还维护…...

Linux驱动---IO模型

1、什么是IO 在计算机系统中I/O就是输入和输出的意思,只要具有输入输出类型的交互系统都可以认为是I/O系统 也可以说I/O是整个操作系统数据交换与人机交互的通道 针对不同的操作对象, 可以划分为磁盘I/O模型,网络I/O模型,内存映…...

ssh爆破获取用户密码

通过nmap扫描目标主机发现ssh版本为OpenSSH 5.3&#xff0c;有漏洞 漏洞影响版本&#xff08;OpenSSH < 8.3p1&#xff09; 使用msfconsole 工具 search ssh #查找有关ssh的漏洞 找到并使用漏洞use auxiliary/scanner/ssh/ssh_login show options #查看此漏…...

express框架rmvp的使用

文章目录前言一、RMVP是什么&#xff1f;二、搭建基本服务1.构建服务器server.js基本组成2.router文件2.1、如何实现数据的获取GETPOSTPUTPATCHDELETE2.2 如果想要不区分请求方式,一律接收2.3 做rmvp的抽离,抽离controller三、渲染知识补充前端请求静态资源目录&#xff08;快&…...

在java程序中使用protobuf

文章目录简介为什么使用protobuf定义.proto文件编译协议文件详解生成的文件Builders 和 Messages序列化和反序列化协议扩展总结简介 Protocol Buffer是google出品的一种对象序列化的方式&#xff0c;它的体积小传输快&#xff0c;深得大家的喜爱。protobuf是一种平台无关和语言…...

PMP项目管理 | 项目整合管理

PMP项目管理之项目整合管理项目整合管理定义及概念项目整合管理考虑要素项目整合管理过程包括子过程分解4.1 制定项目章程定义理解作用发生时机参与方输入、工具与技术和输出4.2 制定项目管理计划定义理解作用发生时机参与方项目管理计划和文件输入、工具与技术和输出4.3 指导和…...

看完99%的人都学会了!java多态简单例子_ser

认识HTTP 什么是超文本什么是传输什么是协议 HTTP相关组件 网络模型OSI 模型浏览器Web服务器CDNWAFWebServiceHTMLWeb页面构成 与 HTTP 有关的协议 TCP/IPDNSURI / URLHTTPS 详解 HTTP 报文 HTTP请求方法HTTP请求URLHTTP版本HTTP 请求响应过程HTTP 请求特征 HTTP 标头 通用…...

【详细教程】-Python绘图模块Matplotlib

文章目录1 简介2 绘图标记2.1 fmt参数2.2 标记大小与颜色3 绘图线3.1 线的类型3.2 线的颜色3.3 线的宽度3.4 多条线4 轴标签和标题4.1 标题4.2 图形中文显示4.3 标题与标签的定位5 网格线6 绘制多个图6.1 subplot6.2 subplots7 散点图8 柱形图9 饼图1 简介 下面的代码通过两个…...

2021年A特种设备相关管理(锅炉压力容器压力管道)免费试题及A特种设备相关管理(锅炉压力容器压力管道)考试技巧

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通&#xff1a;A特种设备相关管理&#xff08;锅炉压力容器压力管道&#xff09;免费试题是安全生产模拟考试一点通生成的&#xff0c;A特种设备相关管理&#xff08;锅炉压力容器压力管道&#…...

前端类库开发最佳实践

Yarn Lerna Rollup 示例项目 Yarn 通过使用 Yarn 的工作区功能&#xff0c;让 Yarn 根据就依赖关系帮助你分析所有子项目的公共依赖&#xff0c;让所有的子项目的公共依赖只会被下载和安装一次。 Lerna 通过 Lerna 可以将一系列相互耦合比较大、又相互独立的库进行管理&…...

shell 的关联数组

shell 的关联数组 引言 shell也有Map的数据结构&#xff0c;哈哈哈&#xff0c;是挺高大上的。万能的shell。。。。 万恶的mac&#xff0c;sed和linux不一样&#xff0c;关联数组和linux也不要一样。要你干啥&#xff01;&#xff01;&#xff01; 一个需求的处理 感谢这个…...

Cookie对象的使用

Cookie对象是做什么的&#xff1f; 在我的理解里&#xff0c;Cookie是客户端用来和客户端保持通讯信息的一个对象。 怎样使用Cookie 使用一个对象&#xff0c;很显然我们要先创建他 Cookie cookie new Cookie(name, value); 然后用res对象将Cookie发送给客户端 res.addCookie…...

jspdf本地运行环境正常,打包后下载的pdf不全

最近开发过程中遇到个问题&#xff0c;用jspdf配合html2canvas把页面元素下载为pdf文件&#xff0c;在本地运行环境好好的&#xff0c;但是打包之后下载的pdf就是不全的&#xff0c;搜了好久也没找出什么对症的解决方案。 现象就是这样&#xff1a; 正常的文件&#xff1a; 有…...

12013.ADC779x采集芯片

文章目录1 AD7997 特征2 管脚描述3 I2C地址确定3 内部寄存器结构3.1 内部结存器结构3.2 配置寄存器3.3 转换结果寄存器3.4 数据寄存器3.5 Hysteresis Register (CH1/CH2/CH3/CH4) 迟滞寄存器3.6 CYCLE TIMER REGISTER 循环计时寄存器3.7 SAMPLE DELAY AND BIT TRIAL DELAY 样本…...

实训项目-白金手册(个人信息管理系统)

实训项目-个人信息管理系统 文章目录实训项目-个人信息管理系统前言一、前期相关准备1、 编译软件安装2、 基本技术掌握2.1、 信息存储2.1.1、 临时存储2.1.2、 长期存储2.2、 查找排序2.3、 线性表操作2.4、 文件操作2.5、 代码书写规范二、需求分析三、难点疑点分析1、实现读…...

C++ ---仅仅翻转字符

仅仅翻转字符 题目描述&#xff1a; 给定一个字符串 S&#xff0c;返回 “反转后的” 字符串&#xff0c;其中不是字母的字符都保留在原地&#xff0c;而所有字母的位置发生反转。 题目来源&#xff1a;力扣 class Solution { public:bool IsLetter(char ch){if((ch >a&a…...

mybatis-generator自定义TypeHandler进行加密解密

背景&#xff1a;公司需要将部分验证码进行加密入库&#xff0c;查询的时候解密。 初始时&#xff1a;在每次的逻辑代码中&#xff0c;涉及到该字段的新增&#xff0c;修改&#xff0c;都需要对指定字段进行加密。查询的时候对字段进行解密(缺点&#xff1a;可维护性太差) 改…...

线性封闭区域2D刀路讲解

在学习UG教程的过程中往往要学习UG编程&#xff0c;想尽快速成&#xff0c;可以按照下面UG编程学习步骤&#xff1a; 步骤1、装上编程软件-UG&#xff0c;我们尽量装NX10.0版本&#xff0c;因为它是一个很稳定的一个版本&#xff0c; 步骤2、装上UG的最佳伙伴-优品外挂&#…...

慢慢学习,然后惊呆所有人(八,异常)

目录 ​ 什么是异常&#xff1f; 错误和异常的区别 异常的处理 try语法块&#xff1a; 抓捕异常&#xff1a; 多行异常的处理&#xff1a; 查看出现的异常情况 ​ 自定义异常和抛出异常 Java中异常继承关系 异常抛出&#xff1a; 自定义异常&#xff1a; finall…...

并查集(Union Find)

算法背景 Union Find算法&#xff0c;中文并查集。主要用来解决图论中的连通判断问题&#xff0c;简单抽象问题为&#xff1a; 平面上有n个点给定他们之间两两连接关系 要求输入任意两个点&#xff0c;判断他们是否能够有一条路径联通 算法步骤 一旦有连接&#xff0c;就把…...

PCB设计中电流与线宽的关系

原文链接&#xff08;点击原文链接更多精彩学习文章和学习内容&#xff09;&#xff1a;http://blog.bools.cn/archives/1262 PCB设计中电流与线宽的关系一、PCB设计铜铂厚度、线宽和电流关系二、PCB电流与线宽三、从图像中确定线宽四、 经验公式五、在PCB设计中线宽选择的经验…...

Redis 内存淘汰机制

Redis 内存淘汰机制 【问题一】 过期字典的方法很好&#xff0c;但还是有可能会出问题。因为定期删除和惰性删除还是有可能造成大量过期的 key 没被删除&#xff0c;堆积在内存中。非常容易就 内存溢出了 Out of memory。 【问题二】 如何保证 Redis 中的数据都是热点数据 &am…...

过一点求圆的两个切线方程标准式

最近在做一个避障算法&#xff0c;其中一个步骤是过一点求圆的两个切线方程&#xff0c;当时居然卡了挺长时间&#xff0c;特来记录一下&#xff0c;顺便复习一遍高中解析几何知识。 假设起始点坐标&#xff0c;圆心坐标&#xff0c;直线方程 把起始点坐标带入 移项 于是直线方…...

Jmeter运行badboy脚本

使用badboy进行录制 这里我使用禅道提bug 导出为Jmeter文件即可 Jmeter运行脚本 使用Jmeter打开jmx文件&#xff0c;添加结果树 点击回放&#xff0c;测试脚本是否正常运行 根据结果树&#xff0c;对脚本进行调试 调试脚本需要自己摸索...

MYSQL数据库

关系型数据库 数据结构模型 数据库模型根据数据模型来划分&#xff0c;而数据库管理系统(Database Management System)有自己的数据结构&#xff0c;目前比较成熟的在数据库系统中的数据模型有&#xff1a;层次模型、网状模型和关系模型。它们之间的根本区别在于数据之间联系…...

【ACWing】1273. 天才的记忆

题目地址&#xff1a; https://www.acwing.com/problem/content/1275/ 从前有个人名叫WNB&#xff0c;他有着天才般的记忆力&#xff0c;他珍藏了许多许多的宝藏。在他离世之后留给后人一个难题&#xff08;专门考验记忆力的啊&#xff01;&#xff09;&#xff0c;如果谁能轻…...

js音乐播放器

场景 &#xff1a;如果只是前端用的话&#xff0c;估计不需要多讲&#xff0c;我的运用场景是“后台推送语音提示” 我的使用方式 :当接受的WebSocket的时候播放他 <audio src"https://www.cbdaojia.com//yuyin/语音1 .mp3" id"music2"></au…...

string应用

将’a’从字符串s1中全部删除 s1.erase(std::remove(s1.begin(), s1.end(), a), s1.end());string s(b,e); //以区间b,e内的字符作为字符串s的初值 string s4(s3.begin(),s3.begin()5);...

个人技能点(郎)

个人技能点1. 熟悉 h5 和 c3 新特性&#xff1a;语义化标签&#xff0c;flex 布局&#xff0c;动画等H5 新特性&#xff1a;2. 熟悉js作用域、原型、事件轮询机制、闭包等原理&#xff1b;js 作用域闭包事件轮询机制原型3. 熟悉 ES6 语法标准 promise&#xff0c;async/await 异…...

微信小程序从云开发到上线

文章目录一、创建项目二、云函数三、静默登录四、获取用户信息五、使用缓存六、同页面数据操作七、不同页面数据传递八、页面跳转九、检查版本更新十、上线​ 前段时间自己做了一个云开发微信小程序&#xff0c;发现并不复杂&#xff0c;有前端基础的可以试一下。这里主要简单说…...

如何下载矢量二维电子地图数据

所谓矢量&#xff0c;就是既有大小&#xff0c;又有方向的量。在这里更强调方向&#xff0c;“矢”就是箭&#xff0c;箭头一般用来指示方向。所谓二维&#xff0c;就是平面的东西&#xff0c;只有长和宽两个维度。 基于矢量化的电子地图&#xff0c;当放大或缩小显示地图时&a…...

Servlet —— Tomcat, 初学 Servlet 程序

JavaEE传送门JavaEE HTTP —— HTTP 响应详解, 构造 HTTP 请求 HTTPS —— HTTPS的加密方式 目录TomcatServlethello world创建项目引入 Servlet 依赖创建目录结构编写代码doGet打包程序部署程序验证程序Tomcat Tomcat 是一个 HTTP 服务器 HTTP 客户端, 就是大家平时用到的浏…...

关于计算机专业的32个学习网站

#写在前面 今天是2020年3月16日&#xff0c;全球新冠状病毒疫情还在继续。上一周美股出现近几十年来两次熔断&#xff0c;第一次发生在1997年。我们在见证历史&#xff0c;我们在创造历史。未来永远充满不确定性&#xff0c;这对于每个人来说都是挑战&#xff0c;同时也是机遇…...

[附源码]JAVA毕业设计框架的电脑测评系统(系统+LW)

[附源码]JAVA毕业设计框架的电脑测评系统&#xff08;系统LW&#xff09; 目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技…...

多读一年研究生值得吗

多读一年研究生&#xff0c;值不值得&#xff1f; 想毕业即就业的同学&#xff0c;选择专硕会更加合适。虽然有声音认为“专硕不如学硕”&#xff0c;但在就业市场上&#xff0c;专硕的认可度是逐步提高的。在江苏省18年的研究生教育质量报告中&#xff0c;专硕的平均月薪比学…...

香港计算机专业硕士学制几年,想读香港一年计算机硕士,懂行老哥来指导一下我这个迷茫的five...

背景大概就是C9计算机本&#xff0c;gpa不太行3.1&#xff0c;六级五百多还没考过托福雅思&#xff0c;深圳工作一年&#xff0c;税后22w左右&#xff0c;想工作两年后合同到期跳槽&#xff0c;感觉竞争力不足想读个硕士&#xff0c;感觉硕士这个学历有没有还是有差距的。。。考…...

学生管理系统JAVA

1.需求 添加学生&#xff1a;通过键盘录入学生信息&#xff0c;添加到集合中 删除学生&#xff1a;通过键盘录入需要删除学生的学号&#xff0c;将该学生对象从集合中删除 修改学生&#xff1a;通过键盘录入需要修改学的学号&#xff0c;将该学生对象的其他信息进行修改 查看学…...

香港中文大学计算机辅助翻译一年制,2020年香港中文大学一年制硕士容易毕业吗...

香港中文大学(The Chinese University of Hong Kong)&#xff0c;简称港中大(CUHK)&#xff0c;书院联邦制大学建制&#xff0c;为世界大学联盟成员、亚洲首家国际商学院协会(AACSB)认证成员、亚太国际教育协会创始成员、英联邦大学协会成员&#xff0c;是一所以“中国研究”、…...

密大安娜堡计算机硕士,2020年密歇根大学安娜堡分校一年制硕士含金量

学校简介&#xff1a;密歇根大学安娜堡分校(University of Michigan, Ann Arbor)&#xff0c;也译作密西根大学安娜堡分校。它是密歇根大学的旗舰校区&#xff0c;因此通常“密歇根大学”就能代指“密歇根大学安娜堡分校”。是位于美国密歇根州的一所世界顶尖著名公立大学&…...

计算机硕士要求,美国计算机硕士专业的录取要求

计算机专业是美国大学的招生大户。&#xff0c;那么你知道美国大学计算机硕士录取条件 如何吗?下面是86留学网详细介绍。美国大学计算机硕士录取条件&#xff1a;在录取要求方面&#xff0c;计算机专业对申请者的背景条件没有严格要求。非计算机背景的学生&#xff0c;只要有相…...

加拿大计算机硕士留学移民,加拿大硕士留学移民深度解析,纯干货

对于大多数国内申请人来说&#xff0c;加拿大硕士留学移民是移民加拿大的优选方式之一。镀金的同时&#xff0c;收获加拿大枫叶卡&#xff0c;一举多得的。那加拿大硕士留学移民都有什么优势&#xff1f;加拿大硕士学制什么样呢&#xff1f;需要什么条件才能申请呢&#xff1f;…...

帝国理工计算机科学硕士学费,去帝国理工学院读研需要几年?一年学费是多少?语言要求都有哪些?...

虽然说帝国理工学院在2020年QS世界大学排名中比去年降低了一位&#xff0c;但帝国理工学院依然保持在全球前10的位置&#xff0c;由此可见&#xff0c;帝国理工学院一直是众多留学生梦寐以求的学府之一&#xff0c;那么&#xff0c;问题来了&#xff0c;去帝国理工学院读研需要…...

帝国理工计算机科学硕士,帝国理工计算机硕士介绍

帝国理工学院计算机科学理学硕士项目提供计算机科学的密集训练&#xff0c;适用于非计算机学科背景、想要掌握计算机核心技术或想要丰富计算机知识的学生。帝国理工学院计算机科学理学硕士项目提供了为期一年的计算机科学的密集训练&#xff0c;适用于非计算机学科背景、想要就…...

多伦多大学计算机专业硕士,多伦多大学计算机硕士解析

计算机科学系提供一个研究生课程&#xff0c;通往计算机科学的理学硕士和哲学博士学位。该项目包括课程和研究 (MSc 和 PhD) &#xff0c;两者都是在一名教员的监督下进行的。教师的计算机科学感兴趣的范围广泛的主题相关的计算 , 包括编程语言和方法、软件工程、操作系统、编译…...

伯明翰大学计算机科学网络安全硕士,伯明翰大学网络安全硕士专业

伯明翰大学网络安全硕士专业是为期一年的全日制项目&#xff0c;适合计算机相关专业的毕业生。在伯明翰大学网络安全硕士专业中&#xff0c;学生能够掌握评估设计和构建安全计算机系统的知识和专业技能。伯明翰大学网络安全硕士专业涵盖设计构建安全网络系统的理论和实践&#…...

留学生计算机专业硕士,留学计算机专业硕士

计算机专业是近年来的留学热门专业之一。有些同学想了解去瑞士留学计算机专业研究生的费用。今天&#xff0c;出国留学网就为大家详细介绍一下吧&#xff01;瑞士硕士留学费用1.学费硕士的课程时长一般在一年半到两年之间。硕士留学瑞士的公立大学收费不会很高&#xff0c;每年…...

佐治亚理工学计算机硕士,佐治亚理工学院电子与计算机工程硕士专业

佐治亚理工学院电子与计算机工程硕士专业是美国排名最高的学校之一&#xff0c;也是美国同类规模最大的学校之一。研究方向包括&#xff1a;生物工程、计算机系统和软件、数字信号处理、电能、电磁、电子设计和应用、微电子/微、光学和光子学、系统和控制、电信、VLSI系统和数字…...

英迪大学计算机科学与技术,一年完成世界名校硕士,在马来西亚省时省钱实现人生逆袭!...

马来西亚推行英联邦的教育体制。全英文教学、整体教育水平较高、文凭的国际认同度高&#xff0c;堪称黄金跳板。马来西亚院校的费用每年约6-7万人民币左右&#xff0c;留学性价比超高。马来西亚多个高校设置1年的硕士课程&#xff0c;时间短&#xff0c;学历含金量高。一年时间…...

北卡州立大学计算机科学硕士,2020年北卡罗来纳州立大学一年制硕士含金量

由于北卡州立大学&#xff0c;尤其是研究生院&#xff0c;对国际学生的招收以苛刻著称&#xff0c;对申请者的综合实力有极其严格的筛选标准&#xff0c;导致很多高分但缺乏特点的中国申请者被拒之门外。这就使中国留学生数量以及中国校友数量远远低于全美其他顶尖高校&#xf…...

2018年海归计算机硕士就业前景,2018年美国留学生回国就业情况,起薪一万,最热是IT行业!...

原标题&#xff1a;2018年美国留学生回国就业情况&#xff0c;起薪一万&#xff0c;最热是IT行业&#xff01;这些年的留学归国潮不断增加&#xff0c;回国的留学生也逐渐增加&#xff0c;越来越多人关注留学就业情况。选择什么专业&#xff0c;就业形势、薪资怎样&#xff0c;…...