備戰藍橋杯Day18 - 雙鏈表

一、每日一題

藍橋杯真題之工作時長

這個題寫代碼做的話很麻煩,而且我也不一定能寫出來,所以我直接就是用的excel來計算的時間和。

使用excel的做法

1.先把文件中的時間復制到excel中。

2.把日期和時間分到兩列。

分成兩列的步驟:

選中要分列的數據(注意!只能選擇一列,多列不可操作),在上面找到數據,再找到分列這個操作。

?點進去后選擇分隔符號,點擊下一步。

?只選擇空格,不選擇其他的,之后點擊下一步。

?格式可以選擇常規,也可以選擇日期,沒太大影響。

?最后點擊完成即可。

最后得到的結果,不知道為什么后面會有0:00,但是不影響結果計算,主要是把時間單獨分出一列來即可。

3.計算一天中上下班的時間差?

?在新的一列中這樣寫出計算公式,并得出結果,往下復制,excel會根據對應的單元格得出相應的數據,復制幾個后,可以點右下角的加號向下拉,就能得出兩個單元格的的差值,就是一天中上班的時間。

4.計算每天上班時間的和

5.換算成秒

計算出時間總和的時間單位為天,一天24*60*60s = 86400s。最后結果為5101913s。

在藍橋杯官網提交結果后,運行成功通過。

?二、雙鏈表

單鏈表只可以實現數據不斷向前尋找,不可以向后尋找,為了提高效率,從而引出雙鏈表。

雙鏈表的每個節點有兩個指針,一個指向后一個節點,一個指向前一個節點,這樣既可以向前尋找數據,也可以向后尋找。

?雙鏈表的初始化及基本操作。

class Node:  def __init__(self, data=None):  self.data = data  self.next = None  self.prev = None  class DoublyLinkedList:  def __init__(self):  self.head = None  # 在鏈表末尾添加節點  def append(self, data):  if not self.head:  self.head = Node(data)  else:  new_node = Node(data)  current = self.head  while current.next:  current = current.next  current.next = new_node  new_node.prev = current  # 在鏈表開頭添加節點  def prepend(self, data):  new_node = Node(data)  new_node.next = self.head  if self.head:  self.head.prev = new_node  self.head = new_node  # 刪除指定數據的節點  def delete(self, data):  current = self.head  if current and current.data == data:  self.head = current.next  if self.head:  self.head.prev = None  return  while current and current.data != data:  current = current.next  if current.next:  current.next.prev = current.prev  if current.prev:  current.prev.next = current.next  # 打印鏈表  def print_list(self):  current = self.head  while current:  print(current.data, end=' ')  current = current.next  print()  # 示例  
dll = DoublyLinkedList()  
dll.append(1)  
dll.append(2)  
dll.prepend(0)  
dll.print_list()  # 輸出: 0 1 2  
dll.delete(1)  
dll.print_list()  # 輸出: 0 2

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

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

相關文章

基于單片機的節能窗控制系統設計

摘 要:本文以單片機為基礎,對節能窗控制系統進行了科學設計,在滿足日常生活需求的同時更好地實現節能減排目標。此設計中的節能窗控制系統,實際操作要靈活,具備可靠且穩定的性能,同時具備節能功效。 關鍵詞:單片機;節能窗控制系統;系統設計 在節能窗等概念推廣的背景…

css實現一行靠右,多行靠左

利用 inline-block 可以根據內容寬度變化的特性 如果內容多到折行了&#xff0c;那自身的寬度會和父級同寬&#xff0c;同寬后&#xff0c;產生折行&#xff0c;這時候就生效了… <!DOCTYPE html> <html lang"en"> <head><meta charset"U…

Atcoder ABC342 E - Last Train

Last Train&#xff08;最后一班火車&#xff09; 時間限制&#xff1a;2s 內存限制&#xff1a;1024MB 【原題地址】 所有圖片源自Atcoder&#xff0c;題目譯文源自腳本Atcoder Better! 點擊此處跳轉至原題 【問題描述】 【輸入格式】 【輸出格式】 【樣例1】 【樣例輸入…

2. this 指向問題

this 指向問題 前言 當一個函數調用時&#xff0c;會創建一個執行上下文&#xff0c;這個上下文包括函數調用的一些信息(調用棧&#xff0c;傳入參數&#xff0c;調用方式)&#xff0c;this就指向這個執行上下文。 this 不是靜態的&#xff0c;也并不是在編寫的時候綁定的&am…

java-類和對象-構造方法

類: 屬性 和 方法1. 屬性 與 變量 的 區別屬性 位于 類中 ,變量 位于方法中,2. void 與 returnvoid 無返回值類型return 返回XXXx, return 意味著 方法 執行 結束,return 后面表達式的數據類型必須與方法的返回值類型 一致訪問修飾符 返回值類型 方法名(){}3. 方法的調…

Linux筆記-1

概述 簡介 Linux是現在服務器上最常用的操作系統(OS - Operating system) - 所謂的操作系統本質上也是一個軟件&#xff0c;是一個可以運行其他軟件的容器如果一臺服務器&#xff0c;沒有安裝操作系統&#xff0c;此時稱之為裸機。裸機可以使用&#xff0c;在使用的時候需要使…

【MQ06】延時隊列與優先級隊列

延時隊列與優先級隊列 在消息隊列的最后一篇文章中&#xff0c;我們再來學習兩個非常常見的隊列功能。一個是延時隊列&#xff0c;一個是優先級隊列。它們的應用場景非常多&#xff0c;也非常有意思&#xff0c;不同的消息隊列工具都提供了不同的實現&#xff0c;同樣的&#x…

40. 組合總和 II(力扣LeetCode)

文章目錄 40. 組合總和 II題目描述回溯算法 40. 組合總和 II 題目描述 給定一個候選人編號的集合 candidates 和一個目標數 target &#xff0c;找出 candidates 中所有可以使數字和為 target 的組合。 candidates 中的每個數字在每個組合中只能使用 一次 。 注意&#xff…

istio pod不啟動及訪問報RBAC錯誤問題解決

istio pod不啟動問題解決 在kubernetes集群中安裝istio之后&#xff0c;在創建的depoyment中已經使用了注入注解sidecar.istio.io/inject: true’配置&#xff0c;但是istio pod不創建&#xff0c;代碼示例如下 kind: Deployment apiVersion: apps/v1 metadata:name: name-an…

力扣SQL50 大的國家 查詢

Problem: 595. 大的國家 Code select name,population,area from World where area > 3000000 or population > 25000000;

Sora引發安全新挑戰

文章目錄 前言一、如何看待Sora二、Sora加劇“深度偽造”憂慮三、Sora無法區分對錯四、濫用導致的安全危機五、Sora面臨的安全挑戰總結前言 今年2月,美國人工智能巨頭企業OpenAI再推行業爆款Sora,將之前ChatGPT以圖文為主的生成式內容全面擴大到視頻領域,引發了全球熱議,這…

【Leetcode每日一題】二分查找 - LCR 173. 點名(難度?)(24)

1. 題目解析 Leetcode題目鏈接&#xff1a;LCR 173. 點名 這個問題的理解其實相當簡單&#xff0c;只需看一下示例&#xff0c;基本就能明白其含義了。 核心在于找到題目所給的連續數組中缺失的數字即可。 2.算法原理 在這個升序的數組中&#xff0c;我們發現&#xff1a; …

LeetCode # 1207. 獨一無二的出現次數

1207. 獨一無二的出現次數 題目 給你一個整數數組 arr&#xff0c;請你幫忙統計數組中每個數的出現次數。 如果每個數的出現次數都是獨一無二的&#xff0c;就返回 true&#xff1b;否則返回 false。 示例 1&#xff1a; 輸入&#xff1a;arr [1,2,2,1,1,3] 輸出&#xff1…

Java中Jenkins的應用簡介

目錄 Java中Jenkins的應用什么是Jenkins&#xff1f;Jenkins在Java開發中的應用示例代碼和解決方案 Java中Jenkins的應用 Jenkins是一個流行的開源自動化服務器&#xff0c;可用于持續集成和持續交付。在Java開發中&#xff0c;Jenkins扮演著重要的角色&#xff0c;可以幫助團…

Fastadmin下拉選擇菜單

下拉菜單效果圖如下所示 對應的表字段為 cid int(11) unsigned NOT NULL DEFAULT ‘1’ COMMENT ‘分類ID 1 新手 2VIP 3基金產品’ 步驟如下&#xff1a; 一、lang/zh-cn 中找到對應的文件&#xff0c;添加 配置 二、Model 中添加方法 三、控制器中添加 四、add.html中 …

機器學習高手之路:發現TensorFlow學習網站的無限可能!

介紹&#xff1a;TensorFlow是一個由Google團隊開發的端到端開源機器學習平臺&#xff0c;專為數值計算和機器學習而設計。以下是對TensorFlow的詳細介紹&#xff1a; 開發背景與歷史&#xff1a;TensorFlow起源于谷歌的神經網絡算法庫DistBelief。它被設計成一個靈活的深度學習…

代碼隨想錄Day20 | Leetcode77 組合

題目 給定兩個整數 n 和 k&#xff0c;返回范圍 [1, n] 中所有可能的 k 個數的組合。你可以按 任何順序 返回答案。示例 1&#xff1a; 輸入&#xff1a;n 4, k 2 輸出&#xff1a; [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4], ]示例 2&#xff1a; 輸入&#xff1a;n 1, k 1 …

go并發模式之----工作池/協程池模式

常見模式之四&#xff1a;工作池/協程池模式 定義 顧名思義&#xff0c;就是有固定數量的工人&#xff08;協程&#xff09;&#xff0c;去執行批量的任務 使用場景 適用于需要限制并發執行任務數量的情況 創建一個固定大小的 goroutine 池&#xff0c;將任務分發給池中的 g…

順序表基礎

?錄 1. 課前準備 2. 順序表概念及結構 3. 順序表分類 4. 實現動態順序表 正?開始 課前預備 1. 課程?標 C語?語法基礎到數據結構與算法&#xff0c;前?已經掌握并具備了扎實的C語?基礎&#xff0c;為什么要學習數據結構 課程&#xff1f;?通訊錄項? 2. 需要…

小程序分賬方案:實現商戶分賬的簡便與靈活

隨著移動支付的普及和小程序的快速發展&#xff0c;越來越多的商家選擇在微信小程序上開展業務。然而&#xff0c;對于一些有多個分賬方的商戶而言&#xff0c;如何實現快速、準確和靈活的資金分賬成為了一個挑戰。本文將介紹一種高效的小程序分賬方案&#xff0c;幫助商戶輕松…