【華為OD題庫-075】拼接URL-Java

題目

題目描述:
給定一個url前綴和url后綴,通過,分割。需要將其連接為一個完整的url。
如果前綴結尾和后綴開頭都沒有/,需要自動補上/連接符
如果前綴結尾和后綴開頭都為/,需要自動去重
約束:不用考慮前后綴URL不合法情況
輸入描述:
url前綴(一個長度小于100的字符串)
url后綴(一個長度小于100的字符串)
輸出描述:
拼接后的url
示例1:
輸入
/acm,/bb
輸出
/acm/bb
示例2:
輸入
/abc/,/bcd
輸出
/abc/bcd
示例3:
輸入
/acd,bef
輸出
/acd/bef
示例4:
輸入
,
輸出
/

思路

字符串處理題目,送分題。根據示例4來看,前后綴可能為空。
比如以下兩組示例:
/test/, ==》應該輸出/test
,hi ==>應該輸出/hi
上面兩組數據,在經過str.split(“,”)后,第一個數據分割后的數組arr只有1個長度,而第二個分割后有兩個長度,所以取前綴時可以直接取arr[0],取后綴時則需要根據數組長度判斷。
在這里插入圖片描述
在拼接字符串時,只需要將前綴末尾和后綴開始的/均去掉,然后使用/將前后綴拼接在一起即可
考慮前后綴可能為空的情況,前綴為空無影響,后綴為空,則輸出前綴即可(末尾不再加/)

題解

package hwod;import java.util.Scanner;public class ConcactUrl {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String[] arrs = sc.nextLine().split(",");System.out.println(concatUrl(arrs));}private static String concatUrl(String[] arrs) {if (arrs.length == 0) return "/";String prefix = arrs[0];String suffix = arrs.length > 1 ? arrs[1] : "";if (prefix.length()!=0&&prefix.charAt(prefix.length() - 1) == '/') prefix = prefix.substring(0, prefix.length() - 1);if (suffix.length()!=0&&suffix.charAt(0) == '/') suffix = suffix.substring(1);if(suffix.isEmpty()) return prefix;return prefix + "/" + suffix;}
}

推薦

如果你對本系列的其他題目感興趣,可以參考華為OD機試真題及題解(JAVA),查看當前專欄更新的所有題目。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/212370.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/212370.shtml
英文地址,請注明出處:http://en.pswp.cn/news/212370.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

49.Go避免大量并發訪問DB、避免緩存擊穿、緩存穿透、緩存雪崩以及使用延遲雙刪保證數據一致性

文章目錄 一、在高并發下,如何避免大量請求直接訪問數據庫?二、避免緩存擊穿二、避免緩存穿透三、避免緩存雪崩四、延遲雙刪保證數據一致性五、在使用 Go 的 time.AfterFunc 函數時,如果刪除緩存操作失敗怎么辦? MySQL和 Redis是…

vue自定義指令實現按鈕只允許點擊一次

vue自定義指令實現按鈕只允許點擊一次 vue自定義指令實現按鈕只允許點擊一次 這個例子中創建了一個名為 click-once 的自定義指令,通過 bind 鉤子函數給元素綁定了一個點擊事件,并且利用一個變量 clicked 控制了按鈕只能點擊一次的行為。在點擊后會執行傳…

【ITK庫學習】使用itk庫進行圖像濾波ImageFilter:Voting濾波器

目錄 1、itkVotingBinaryImageFilter2、itkVotingBinaryHoleFillingImageFilter 洞穴充填濾波器3、itkVotingBinaryIterativeHoleFillingImageFilter4、itkLabelVotingImageFilter 1、itkVotingBinaryImageFilter 該類是一個基類,用于根據前景和背景像素的鄰域投票…

【數據結構實踐課設】新生報道注冊管理信息系統

目錄 1.主要框架 2.寫入文件 3.讀取文件 4.注冊學生信息 5.增加學生信息 6.刪除學生信息 7.按姓名查詢 8.按班級查詢 9.按專業查詢 10.打印學生信息 11.完整代碼 🌈嗨!我是Filotimo__🌈。很高興與大家相識,希望我的博客能對你有所…

git commit語義規范

合理的應當如 [header]fix(core): remove ....(#33949) These .... RP Close #33949(可選) Header可選 代碼類 新增功能(feat) 修復缺陷(fix) 改進性能(perf) 格式化代碼(style) 優化代碼(refactor) 非代碼類 更新測試代碼(test) 部署相關變更(ci) 文檔類變更(do…

【Linux】第二十七站:內存管理與文件頁緩沖區

文章目錄 一、物理內存和磁盤交換數據的最小單位二、操作系統如何管理內存三、文件的頁緩沖區四、基數樹or基數(字典樹)五、總結 一、物理內存和磁盤交換數據的最小單位 我們知道系統當中除了進程管理、文件管理以外,還有內存管理 內存的本質…

思科最新版Cisco Packet Tracer 8.2.1安裝

思科最新版Cisco Packet Tracer 8.2.1安裝 一. 注冊并登錄CISCO賬號二. 下載 Cisco Packet Tracer 8.2.1三. 安裝四. 漢化五. cisco packet tracer教學文檔六. 正常使用圖 前言 這是我在這個網站整理的筆記,有錯誤的地方請指出,關注我,接下來還會持續更新…

[香橙派]orange pi zero 3 燒錄Ubuntu系統鏡像——無需HDMI數據線安裝

一、前言 本文我們將介紹如何使用orange pi zero 3 安裝Ubuntu系統,本文相關步驟均參考自開發手冊。 二、實施準備 根據開發手冊中所提到的,我們應該擁有如下配件: 1.orange pi zero 3 開發板 2.TF 卡——最小 8GB 容量的 class10 級或以上的高速閃迪卡。…

鴻蒙OS應用開發之語句

在程序開發中,已經有上面的運算符和數據類型了,可以滿足了大部的需求,但是這些程序還是比較簡單的計算和邏輯運算,如果需要復雜的計算和邏輯處理,就需要采用復雜邏輯程序塊來處理了,也就是復雜條件語句才能…

nn.Sequential|nn.ModuleDict|nn.ModuleList 詳解

文章目錄 1、簡介2、三者之間的區別3、如何讓nn.ModuleList 和nn.ModuleDict實現推理3.1 方案1: 實現forward函數3.2 方案2: 將nn.ModuleList 和nn.ModuleDict轉換為nn.Sequential4、nn.ModuleDict、nn.ModuleList 的區別5、nn.ModuleList 、 nn.ModuleDict 與 Python list、…

模型 心流

本系列文章 主要是 分享模型,涉及各個領域,重在提升認知。完全投入其中。 1 心流的應用 1.1 優秀運動員的心流體驗 邁克爾喬丹(Michael Jordan):籃球之神喬丹在比賽中經常進入心流狀態,他曾表示&#xff…

DIY手工藝作坊網站建設的作用如何

我國文化悠久流長,很多手工藝品制作技術放在如今依然有很高的需求度,加之現代新增的技藝,樣式多且藝術性強,比如常見的陶器手工制作技術,當然還有更多。 而對相關作坊來說,除了藝術傳承外,還需…

接觸剛性環境任務下的機器人力控(阻抗)性能測試

內涵 接觸剛性環境任務下的機器人力控(阻抗)性能測試旨在評估機器人在與剛性物體交互時的性能表現。這種測試通過調整機器人的控制參數,如期望剛度和期望阻尼等,并分析記錄的數據,旨在確保機器人能夠在執行任務時保持…

短劇分銷小程序/APP開發:開啟短劇收益時代

今年,短劇火爆出圈,市場規模將達至200億元至300億元。國內全全平臺付費短劇日充值金額為6000萬元,短劇作為一種“快餐式”文化迅速爆火。 短劇契合了觀眾娛樂時間碎片化的發展趨勢,相比于傳統的電視劇,短劇節奏快、劇…

Nacos源碼解讀10——配置中心的客戶端怎么處理服務端推送的配置信息變更

自動裝配 SpringBoot 自動裝配機制 加載 WEB/INF spring.factories org.springframework.cloud.bootstrap.BootstrapConfiguration\ com.alibaba.cloud.nacos.NacosConfigBootstrapConfigurationjava Configuration(proxyBeanMethods false) ConditionalOnProperty(name &q…

MongoDB的連接數據庫,創建、刪除數據庫,創建、刪除集合命令

本文主要介紹MongoDB的連接數據庫,創建、刪除數據庫,創建、刪除集合命令。 目錄 MongoDB連接數據庫連接到本地 MongoDB 實例連接到遠程 MongoDB 實例 MongoDB創建和刪除數據庫MongoDB創建和刪除集合創建集合刪除集合 MongoDB連接數據庫 連接 MongoDB 數…

P1317 低洼地題解

題目 一組數,分別表示地平線的高度變化。高度值為整數,相鄰高度用直線連接。找出并統計有多少個可能積水的低洼地? 如圖:地高變化為 [0,1,0,2,1,2,0,0,2,0]。 輸入輸出格式 輸入格式 兩行,第一行n, 表示有n個數。第…

Spark DataFrame和Dataset使用例子

文章目錄 1、基本操作1.1、創建SparkSession1.2、創建DataFrames1.3、創建Dataset操作1.4、運行sql查詢1.5、創建全局臨時視圖1.6、創建Datasets1.7、與rdd進行互操作1.7.1、使用反射推斷模式1.7.2、以編程方式指定模式 2、完整的測試例子 1、基本操作 1.1、創建SparkSession …

openGauss學習筆記-151 openGauss 數據庫運維-備份與恢復-物理備份與恢復之gs_basebackup

文章目錄 openGauss學習筆記-151 openGauss 數據庫運維-備份與恢復-物理備份與恢復之gs_basebackup151.1 背景信息151.2 前提條件151.3 語法151.4 示例151.5 從備份文件恢復數據 openGauss學習筆記-151 openGauss 數據庫運維-備份與恢復-物理備份與恢復之gs_basebackup 151.1 …

NeuralKG運行備忘

環境配置: conda create -n neuralkg python3.8 conda activate neuralkg pip install torch1.9.1cu111 -f https://download.pytorch.org/whl/torch_stable.html pip install dgl-cu111 dglgo -f https://data.dgl.ai/wheels/repo.html pip install neuralkg! co…