LeetCode_LCR002做題總結(可變字符序列使用)

LCR 002. 二進制求和

  • 方法一
  • 方法二
  • 遺落知識點
    • 字符串長度
    • string
    • StringBuffer && StringBuilder

方法一

轉換成十進制數,求和之后再轉換成二進制數

class Solution {public String addBinary(String a, String b) {return Integer.toBinaryString(Integer.parseInt(a, 2) + Integer.parseInt(b, 2));}
}

沒考慮到一個大于0 一個小于零int tmp = (a[i]-‘0’) + (b[j]-‘0’)
String res = ‘’; error: empty character literal

方法二

B站講解視頻 和 力扣題解別人的答案 都用了這種方法,但目前已經超時。暫時還沒找到可以執行的方法。

class Solution {public String addBinary(String a, String b) {StringBuffer res = new StringBuffer();int carry = 0; //進位int i = a.length() - 1;int j = a.length() - 1;while(i>=0 || j>=0 || carry!=0) {if(i>=0) carry+=a.charAt(i)-'0';if(j>=0) carry+=b.charAt(j)-'0';res.insert(0, carry%2);//res = String.valueOf(tmp%2)+res;carry = carry/2;}return res.toString();}
}

遺落知識點

字符串長度

字符串長度str.length()

string

  • java中 string不可以看作數組

String是使用char數組來存儲數據,并且是使用final修飾的,所以String的值一經定義是不可變的

  • 訪問string中某一個位置的字符 charAt

StringBuffer && StringBuilder

如果想要可變字符,使用StringBuilder(可變字符序列,效率高,線程不安全)、StringBuffer(可變字符序列,效率低,線程安全)

以StringBuffer為例。

  • public StringBuffer append(String str):可以把任意類型數據添加到字符串緩沖區里面,并返回字符串緩沖區本身

  • public StringBuffer insert(int offset,String str):在指定位置任意類型的數據插入到字符串緩沖區里面,并返回字符串緩沖區本身

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

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

相關文章

算法提高之木棒

算法提高之木棒 核心思想:dfs 剪枝優化 1.搜索順序優化:len從小到大遍歷2**.剪枝(失敗后):** (1) 跳過所有和第i根木棍相同長度的木棍(2) 如果當前木棍是新木棒的第一根就失敗了 則之后不會搜到方案 return false(3) 下一根失敗但是上一根成…

java獲取到泛型信息后,需要包裝到另一個父類型中。比如讀取類型R,包裝成Res<R>

問題 對于json解析來說&#xff0c;我們一般是通過jackson的TypeReference或者XXX.class來制定類型&#xff08;其他json框架同理&#xff09;&#xff0c;比如下列代碼&#xff1a; ResponseBody<XxxClass> body JsonUtils.parseObject(response, new TypeReference&…

vue + element-plus項目做管理系統常用的組件,以及一些方便開發的設置

1.簡化路徑 //vite.consfig.ts import { defineConfig, ConfigEnv } from vite import vue from vitejs/plugin-vue import path from path export default defineConfig(({ command }: ConfigEnv) > {return {plugins: [vue(),],resolve: {alias: {: path.resolve(__dirn…

EEL中 python端的函數名是如何傳遞給js端的

python端的函數名是如何傳遞給js端的 核心步驟&#xff1a;將函數名列表注入到動態生成的 eel.js 中&#xff0c;這樣前端一開始引用的eel.js本身已經包含有py_function的函數名列表了。你打開開發者工具看看瀏覽器中的 eel.js文件源代碼就知道了。 具體實現&#xff1a; # 讀…

全面解析OpenAI的新作——GPT-4o

5月14日凌晨1點、太平洋時間的上午 10 點&#xff0c;OpenAI的GPT-4o的橫空出世&#xff0c;再次鞏固了其作為行業顛覆者的地位。GPT-4o的發布不僅僅是一個產品的揭曉&#xff0c;它更像是向世界宣告AI技術已邁入了一個全新的紀元&#xff0c;連OpenAI的領航者薩姆奧特曼也不禁…

樓宇智慧公廁建設新方案-集成更簡單!成本價更低!

在當今的大廈和寫字樓中&#xff0c;公廁面臨著諸多痛點。 辦公樓公廁常常存在廁位難找的問題&#xff0c;使用者不得不花費時間逐一查看&#xff0c;導致效率低下&#xff1b;環境質量也令人擔憂&#xff0c;異味、臟污等情況時有發生&#xff0c;影響使用者的心情和健康&…

【simulink】Scrambling 加擾

https://ww2.mathworks.cn/help/comm/ug/additive-scrambling-of-input-data-in-simulink.html 草圖 simulink 代碼圖

leetcode-11. 盛最多水的容器(雙指針)

11. 盛最多水的容器 /*** param {number[]} height* return {number}*/ var maxArea function (height) {// 時間復雜度 O(n)// 空間復雜度 O(1)let len height.length;let left 0,right len - 1;let res 0;while (left < right) {let area Math.min(height[left], h…

QT狀態機10-QKeyEventTransition和QMouseEventTransition的使用

1、QMouseEventTransition的使用 首先明白 QMouseEventTransition 繼承自 QEventTransition類。 關于QEventTransition類的使用,可參考 QT狀態機9-QEventTransition和QSignalTransition的使用 回顧 QT狀態機9-QEventTransition和QSignalTransition的使用 中的狀態切換代碼,如…

零基礎10 天入門 Web3之第3天

10 天入門 Web3之第3天 什么是以太坊&#xff0c;以太坊能做什么&#xff1f;Web3 是互聯網的下一代&#xff0c;它將使人們擁有自己的數據并控制自己的在線體驗。Web3 基于區塊鏈技術&#xff0c;該技術為安全、透明和可信的交易提供支持。我準備做一個 10 天的學習計劃&…

AI+新能源充電樁數據集

需要的同學私信聯系&#xff0c;推薦關注上面圖片右下角的訂閱號平臺 自取下載。 隨著我國新能源汽車市場的蓬勃發展&#xff0c;充電樁的需求量日益增加&#xff0c;充電樁的智能化程度不僅影響充電站運營商的經營效益&#xff0c;也大大影響著用戶的充電體驗。AI技術可以涵蓋…

Flutter 中的 Listener 小部件:全面指南

Flutter 中的 Listener 小部件&#xff1a;全面指南 在Flutter中&#xff0c;Listener是一個可以監聽多種類型事件的通用組件&#xff0c;它可以用來監聽如滾動、震動、焦點等事件。Listener通常與GestureDetector等組件結合使用&#xff0c;以實現對用戶交互的響應。本文將提…

python “名稱空間和作用域” 以及 “模塊的導入和使用”

七、名稱空間和作用域 可以簡單理解為存放變量名和變量值之間綁定關系的地方。 1、名稱空間 在 Python 中有各種各樣的名稱空間&#xff1a; 全局名稱空間&#xff1a;每個程序的主要部分定義了全局的變量名和變量值的對應關系&#xff0c;這樣就叫做全局名稱空間 局部名稱…

04-單片機商業項目編程,從零搭建低功耗系統設計

一、本文內容 上一節《03-單片機商業項目編程&#xff0c;從零搭建低功耗系統設計-CSDN博客》我們確定了設計思路&#xff0c;并如何更有效的保持低功耗&#xff0c;這節我們就準備來做軟件框架設計。在AI飛速發展的時代&#xff0c;我們也會利AI來輔助我們完成&#xff0c;讓自…

淺談C++ overload(重載) override(覆蓋) overwrite(重寫)

目錄 1. 名詞辨析2 含義解析1 overload重載2 override覆蓋3 overwrite重寫 3 區別4 代碼示例 1. 名詞辨析 關于這3個名詞的中文翻譯&#xff1a; overload翻譯為重載&#xff0c;基本是沒有歧義的&#xff1b;override和overwrite的翻譯&#xff0c;我在參考了cppreference中…

.NET周刊【5月第2期 2024-05-12】

國內文章 C#在工業數字孿生中的開發路線實踐 https://mp.weixin.qq.com/s/b_Pjt2oii0Xa_sZp_9wYWg 這篇文章探討了C#在工業數字孿生技術中的應用&#xff0c;介紹了三種基于C#的數字孿生系統實現方案&#xff1a; WPF Unity&#xff1a;結合WPF技術和Unity引擎&#xff0c…

接口、會話控制

文章目錄 接口介紹RESTful APIjson-server接口測試工具apipost公共參數和文檔功能 會話控制cookie介紹和使用運行流程瀏覽器中操作Cookieexpress中cookie操作 Sessionsession運行流程&#xff1a;session中間件配置session 和 cookie 的區別CSRF跨站請求偽造 tokenJWT介紹與演示…

idea控制臺日志控制

1.清除控制臺log日志 測試的時候&#xff0c;控制臺打印的日志比較多&#xff0c;速度有點慢而且不利于查看運行結果&#xff0c;所以接下來我們把這個日志處理下: 取消初始化spring日志打印&#xff0c;resources目錄下添加logback.xml&#xff0c;名稱固定&#xff0c;內容如…

vscode 通過ssh 遠程執行ipynb +可以切換conda env

主要是保證幾個點 遠程服務器python 環境沒問題 conda這些也都有的ssh的賬戶 是有conda權限的沒有免密就輸入密碼 免密教程就是最基本的那種 公鑰copy過去就行了vscode 那幾個插件都要裝好 開始操作 首先 vscode 點擊左側工具欄中的擴展&#xff0c;搜索“ssh”&#xff0c;…

【IC前端虛擬項目】驗證環境env與base_teat思路與編寫

【IC前端虛擬項目】數據搬運指令處理模塊前端實現虛擬項目說明-CSDN博客 上一篇里解決了最難搞的axi_ram_model,接下來呢就會簡單又常規一些了,比如這一篇要說的env和base_test的搭建。在這里我用了gen_uvm_tb腳本: 【前端驗證】驗證自動化腳本的最后一塊拼圖補全——gen_t…