您的位置: 首页 > 科技

CS 1501代做、代写Python/Java程序设计

2024-04-08 来源:互联网

CS 1501代做、代写Python/Java程序设计
Support for Assignment 4
CS 1501
Sherif KhattabGeneral Hints
• You can get the number of vertices using ag.getAirports().size(), whereby 
ag is an AirlineGraph object
• Iterate over airports using for(String airport: ag.getAirports()){ … }
• You can get a unique integer for each airport in the graph using the 
ag.getAirportNo() method
• You can retrieve the set of neighbors of an airport using 
ag.adj(airportName)
• To iterate over the set of neighbors: for(Route r: ag.adj(airportName)){ … }
• You can retrieve the name of a neighboring airport using r.destination
• You may use HashSet to instantiate Set objectsfewestStops
• Use BFS
• check the pseudo-code in lecture notes
• Shortest path Source -> transit -> destination can be found by
• shortest path source  transit
• shortest path transit  destination
• concatenate the two shortest paths
• Be careful not to add transit twice to the concatenated pathConnected Components
• Use BFS
• You can find the pseudo-code in the lecture notesallTrips
• Use backtracking and pruning
• Define a recursive helper method: solve(current decision, current solution)
• current decision  current vertex (int or String) • current solution
• Set<ArrayList<Route>> of trips found so far
• current path: ArrayList<Route>
• total price so far of current path
• number of stops so far of current path
• destination, budget and max number of stops for comparison
• Inside the recursive helper method:
• if current vertex is the destination  add current path to the solution set and return
• iterate over all possibilities (unmarked neighbors)
• check if you can add the neighbor to the current path (total price won’t exceed budget and total number of stops won’t exceed maximum stops)
• if so, mark neighbor, update current path, its price, and its number of stops. 
• make a recursive call on the neighbor
• undo changes to current path, price, and number of stops and unmark neighbor
• mark start airport before calling solve the first timeallRoundTrips
• Use backtracking and pruning
• Define a recursive helper method: solve(current decision, current solution)
• current decision  current vertex (int or String) • current solution
• Set<ArrayList<Route>> of trips found so far
• current path: ArrayList<Route>
• total price so far of current path
• number of stops so far of current path
• budget and max number of stops for comparison
• Inside the recursive helper method:
• if current vertex is the source and stops so far > 0  add current path to the solution set and return
• iterate over all possibilities (unmarked neighbors)
• check if you can add the neighbor to the current path (total price won’t exceed budget and total number of stops won’t exceed maximum stops)
• if so, mark neighbor, update current path, its price, and its number of stops. 
• make a recursive call on the neighbor
• undo changes to current path, price, and number of stops and unmark neighbor
• Don’t mark start airport before calling solve the first time

请加QQ:99515681  邮箱:99515681@qq.com   WX:codinghelp

[ 编辑: code ]
05-28 Instagram推广助手 - Ins引流神器/自动私信工具
Instagram推广助手 - Ins引流神器/自动私信工具
这款Instagram营销软件是一种多功能的工具,能够满足现代社交媒体 [详细]
05-21 Instagram群发引流技巧,ins协议私信工具,ig群发软件
Instagram群发引流技巧,ins协议私信工具,ig群发软件
在数字营销的海洋中,Instagram已成为品牌和个体展示自我、吸引观 [详细]
01-30 时空商海的科技跨境电商 Line 群发云控喜剧:时空商海中发生的科技跨境电商 Line 群发软件笑话,带你穿越欢笑时空
时空商海的科技跨境电商 Line 群发云控喜剧:时空商海中发生的科技跨境电商 Line 群发软件笑话,带你穿越欢笑时空
迎着时光的涟漪,我们将踏入一段充满科技笑料的冒险之旅。2024年 [详细]
02-20 Instagram引流营销软件,Ins群发工具,让你的营销事半功倍!
Instagram引流营销软件,Ins群发工具,让你的营销事半功倍!
在数字时代,社交媒体已成为企业推广与营销的重要阵地,而Instagram [详细]