飞机的航班代码/航班号码的编号规则

以下内容来源于网络,并整理而得。

一、国内航班
中国国内航班号的编号规则:

航空公司的两字代码+4位数字

其中,后面四位数字的第一位代表航空公司的基地所在地区
                                  第二位代表航班基地外终点所在地区
                                 (第一位、第二位中数字1代表华北、2为西北、3为华南、4为西南、5为华东、6为东北、8为厦门、9为新疆)
                                  第三、第四位表示航班的序号
                                 (第三位数字代表序号,没有具体含义,第四位的单数表示由基地出发向外飞的航班,双数表示飞回基地的回程航班)

以CA1206为例,CA是中国国际航空公司的代码,第一位数字1表示华北地区,国航的基地在北京;第二位数字2表示西北,西安属西北地区;后两位06为航班序号,末位6是双数,表示该航班为回程航班。 

再比如CZ3151,深圳—北京航班,CZ为南方航空公司的代码,第一位数字3表示华南地区,南航的基地在广州;1表示华北,北京属于华北地区;51为航班序号,单数为去程航班。 

二、国际航班
国际航班号的编号规则:

航空公司代码+3位数字


其中,后面三位数字的第一位数字表示航空公司
                                  后两位为航班序号,与国内航班号相同的是单数为去程,双数为回程。

例如MU508,由东京飞往北京,是中国东方航空公司承运的回程航班。 
知道了航班号的含义,也就掌握了航班的基地信息———它的承运公司、飞往地点。

三、航空公司两字代码
 而,航空公司的两字代码是向IATA(国际航空运输协会)申请的。

 
 

航空公司

二字代码

航空公司

二字代码

山东航空

SC

云南祥鹏航空

8L

深圳航空

ZH

奥凯航空

BK

厦门航空

MF

四川航空

3U

上海航空

FM

海南航空

HU

东方航空

MU

东星航空

8C

南方航空

CZ

大新华航空

CN

重庆航空

OQ

昆明航空

KY

联合航空

KN

首都航空

JD

天津航空

GS

河南航空

VD

西部航空

PN

华夏航空

G5

中国国际航空

CA

成都航空

EU

河北航空

NS

西藏航空

TV

吉祥航空

HO

幸福航空

JR

更多航空公司两字代码,可参考:http://blog.csdn.net/lejuo/article/details/51691513  四、例外情况 随着现在飞机的增多,并不是所有的航空公司都是按照这样的规则来进行编排的,而是给出一段航班号让航空公司自己安排。比如海航是7000--7999,深航是9550--9999,川航是8600—8999。

加班飞行的航班第一二位数字同正常的航班,第三四位数字只允许使用“91---00”十个数字。

   例如由重庆飞往昆明的3U8968航班,第一位数字为8,表示福建地区,但川航的总部在四川省,应属于西南地区;所以这个航班号实际遵循了川航航班号段是8600—8999的这种例外情况。

   又如由重庆飞往深圳的ZH9856航班,第一位数字为9,表示新疆地区,但深航的总部在广东省,应属于中南地区;所以这个航班号实际遵循了深航航班号段是9550--9999的这种例外情况。   本文来源:http://iask.sina.com.cn/b/8092881.html
  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是使用邻接矩阵表示带权有向图的Java代码: ```java public class FlightGraph { private int numVertices; private int[][] adjacencyMatrix; public FlightGraph(int numVertices) { this.numVertices = numVertices; adjacencyMatrix = new int[numVertices][numVertices]; } public void addEdge(int source, int destination, int weight) { adjacencyMatrix[source][destination] = weight; } public List<Integer> shortestPath(int source, int destination) { int[] distance = new int[numVertices]; boolean[] visited = new boolean[numVertices]; int[] predecessor = new int[numVertices]; for (int i = 0; i < numVertices; i++) { distance[i] = Integer.MAX_VALUE; } distance[source] = 0; for (int i = 0; i < numVertices - 1; i++) { int minDistance = Integer.MAX_VALUE; int minVertex = -1; for (int j = 0; j < numVertices; j++) { if (!visited[j] && distance[j] < minDistance) { minDistance = distance[j]; minVertex = j; } } visited[minVertex] = true; for (int k = 0; k < numVertices; k++) { int edgeWeight = adjacencyMatrix[minVertex][k]; if (edgeWeight > 0 && !visited[k] && distance[minVertex] + edgeWeight < distance[k]) { distance[k] = distance[minVertex] + edgeWeight; predecessor[k] = minVertex; } } } List<Integer> path = new ArrayList<>(); int currentVertex = destination; while (currentVertex != source) { path.add(currentVertex); currentVertex = predecessor[currentVertex]; } path.add(source); Collections.reverse(path); return path; } } ``` 使用示例: ```java FlightGraph flightGraph = new FlightGraph(4); flightGraph.addEdge(0, 1, 10); flightGraph.addEdge(0, 2, 15); flightGraph.addEdge(1, 2, 5); flightGraph.addEdge(2, 3, 20); flightGraph.addEdge(1, 3, 25); List<Integer> shortestPath = flightGraph.shortestPath(0, 3); System.out.println("Shortest path from 0 to 3: " + shortestPath); ``` 输出结果: ``` Shortest path from 0 to 3: [0, 1, 2, 3] ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机场信息系统研究员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值