書籍在其他數都出現k次的數組中找到只出現一次的數(7)0603

題目

給定一個整型數組arr和一個大于1的整數k。已知arr中只有1個數出現了1次,其他的數都出現了k次,請返回只出現了1次的數。

解答:

對此題進行思路轉換,可以將此題,轉換成k進制數。

k進制的兩個數c和d,在i位上無進位相加的結果就是(c(i) + d(i) )% k。那么,如果k個相同的k進制進行無進位相加,相加的結果一定是沒一位上都是0的k進制數。

首先設置一個變量eO,它是一個32位的k進制數,且每個位置上都是0。然后遍歷arr,把遍歷到的每一個整數都轉換為k進制數,然后與eO進行無進位相加。遍歷結束時,把32位的k進制數eORes轉換為十進制整數,就是我們想要的結果。因為k個相同的k進制數無進位相加,結果一定是每一位上都是0的k進制數,所以只出現一次的那個數最終就會剩下來。

public int onceNum(int[] arr, int k ){int[] eO = new int[32];for(int i = 0;i != arr.length;i++){setExclsiveOr(eO,arr[i],k);    }int res = getNumFromKSysNum(eO,k);
}public void setExclusiverOr(int[] eO,int value,int k){int[] curKSysNum = getKSysNumFromNum(value,k);for(int i = 0;i!= eO.length;i++){eO[i] = (eO[i] + curKSysNum[i]) % k;}
}public int[] getKSysNumFromNum(int value,int k){int[] res = new int[32];int index = 0;while(value != 0 ){res[index++] = value % k;value = value/k;}return res;
}public int getNumFromKSysNum(int[] eO,int k){int res = 0;for(int i = eO.length - 1;i != -1; i--){res = res * k + eO[i];}return res;
}

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

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

相關文章

React 項目初始化與搭建指南

React 項目初始化有多種方式,可以選擇已有的腳手架工具快速創建項目,也可以自定義項目結構并使用構建工具實現項目的構建打包流程。 1. 腳手架方案 1.1. Vite 通過 Vite 創建 React 項目非常簡單,只需一行命令即可完成。Vite 的工程初始化…

大模型模型推理的成本過高,如何進行量化或蒸餾優化

在人工智能的浪潮中,大模型已經成為推動技術革新的核心引擎。從自然語言處理到圖像生成,再到復雜的多模態任務,像GPT、BERT、T5這樣的龐大模型展現出了驚人的能力。它們在翻譯、對話系統、內容生成等領域大放異彩,甚至在醫療、金融等行業中也開始扮演重要角色。可以說,這些…

機器學習在多介質環境中多污染物空間預測的應用研究

機器學習在多介質環境中多污染物空間預測的應用研究 1. 引言 1.1 研究背景與意義 隨著工業化和城市化進程加速,環境中多種污染物的共存已成為全球性環境問題。重金屬(如鉛、汞、鎘)、有機污染物(如多環芳烴、農藥殘留)和新興污染物(如微塑料、藥品殘留)在空氣、水體、…

圖解深度學習 - 激活函數和損失函數

激活函數和損失函數在深度學習中扮演著至關重要的角色。通過選擇合適的激活函數和損失函數,可以顯著提高神經網絡的表達能力和優化效果。 其中激活函數是神經網絡中的非線性函數,用于在神經元之間引入非線性關系,從而使模型能夠學習和表示復…

影響服務器穩定性的因素都有什么?

服務器的穩定性會影響到業務是否能夠持續運行,用戶在進行訪問網站的過程中是否出現頁面卡頓的情況,本文就來了解一下都是哪些因素影響著服務器的穩定性。 服務器中的硬件設備是保證服務器穩定運行的基礎,企業選擇高性能的處理器和大容量且高速…

TopCode之最大子數組和

題目鏈接 53. 最大子數組和 - 力扣(LeetCode) 題目解析 算法原理 解法1: 暴力(一個循環用來固定,一個用來找最大的子數組O(n^2),每次往后拓展一個元素就判斷是否是最長的),枚舉出每一種情況, 然后不斷更新最大的 解法二: dp 1> dp的含義: dp[i]記…

深入解析 Flask 命令行工具與 flask run命令的使用

Flask 是一個輕量級的 Python Web 應用框架,其內置的命令行工具(CLI)基于 Click 庫,提供了方便的命令行接口,用于管理和運行 Flask 應用程序。本文將詳細介紹 Flask 命令行工具的功能,以及如何使用 flask r…

QFramework v1.0 Guide: 工具篇——ViewControllor, ActionKit時序動作執行系統,ResKit資源管理開發解決方案

目錄 一、QFramework.Toolkits簡介 二、View Controllor 1、作用 2、應用場景 3、示例 三、ActionKit時序動作執行系統 1. 用法 (1)延時回調 (2)序列執行 (3)幀延時 (4)條…

GLIDE論文閱讀筆記與DDPM(Diffusion model)的原理推導

Abstract 擴散模型(Diffusion model)最近被證明可以生成高質量的合成圖像,尤其是當它們與某種引導技術結合使用時,可以在生成結果的多樣性與保真度之間進行權衡。本文探討了在文本條件圖像生成任務中使用擴散模型,并比…

@Pushgateway 數據自動清理

文章目錄 Pushgateway 數據自動清理一、Pushgateway 數據清理的必要性二、自動清理方案方案1:使用帶TTL功能的Pushgateway分支版本方案2:使用Shell腳本定期清理方案3:結合Prometheus記錄規則自動清理 三、最佳實踐建議四、驗證與維護五、示例…

QML視圖組件ListView、TableView、GridView介紹

1 MVD模型 Model:模型,包含數據及其結構。View:視圖,用于顯示數據。Delegate:代理,規定數據在視圖中的顯示方式。2 ListView 以列表形式展示數據。2.1 屬性 model:設置或獲取列表視圖的數據模型delegate:定義了列表中每一項的外觀和行為currentIndex:獲取或設置當前選…

解決vscode打開一個單片機工程文件(IAR/keil MDK)因無法找到頭文件導致的結構體成員不自動補全問題。

最近一直在用vscode安裝c/c插件后編輯STM32標準庫(keil MDK)項目源文件,因為我感覺vscode在代碼編輯方面比keil MDK本身優秀太多。發現打開工程后,結構體變量的成員在輸入“.”后不自己彈出的問題,后來查找各方資料&am…

5分鐘申請edu郵箱【方案本周有效】

這篇文章主要展示的是成果。如果你是第1次看見我的內容,具體的步驟請翻看往期的兩篇作品。先看更正補全,再看下一個。 建議你邊看邊操作。 【更正補全】edu教育申請通過方案 本周 edu教育郵箱注冊可行方案 #edu郵箱 偉大無需多言 我已經驗證了四個了…

零知開源——STM32F407VET6驅動ILI9486 TFT顯示屏 實現Flappy Bird游戲教程

簡介 本教程使用STM32F407VET6零知增強板驅動3.5寸 ILI9486的TFT觸摸屏擴展板實現經典Flappy Bird游戲。通過觸摸屏控制小鳥跳躍,躲避障礙物柱體,挑戰最高分。項目涉及STM32底層驅動、圖形庫移植、觸摸控制和游戲邏輯設計。 目錄 簡介 一、硬件準備 二…

云臺式激光甲烷探測器:守護工業安全的“智慧之眼”

在石油化工、天然氣場站、城市燃氣管網等場景中,甲烷泄漏的早期監測是保障生產安全的核心防線。云臺式激光甲烷探測器憑借高精度、無接觸、智能化的技術優勢,成為工業安全監測領域的革新者。本文將深度解析其技術原理、核心功能及適用場景,助…

解決 Ubuntu 20.04 虛擬機中 catkin_make 編譯卡死問題

完整解決步驟 1. 禁用當前交換文件 sudo swapoff /swapfile 2. 刪除舊的交換文件 sudo rm /swapfile 3. 使用更可靠的創建方法 # 使用 dd 命令創建交換文件(更兼容但較慢) sudo dd if/dev/zero of/swapfile bs1M count4096# 或者使用 truncate 命令…

實驗設計與分析(第6版,Montgomery)第5章析因設計引導5.7節思考題5.7 R語言解題

本文是實驗設計與分析&#xff08;第6版&#xff0c;Montgomery著&#xff0c;傅玨生譯) 第5章析因設計引導5.7節思考題5.7 R語言解題。主要涉及方差分析&#xff0c;正態假設檢驗&#xff0c;殘差分析&#xff0c;交互作用圖&#xff0c;等值線圖。 dataframe <-data.frame…

linux變量的分類

文章目錄 bash中的引號linux變量的分類1.環境變量2.本地變量&#xff1a;3.局部變量4.內置變量5. 位置參數變量6. 特殊變量 變量的定義規則8.數組 bash中的引號 雙引號"" &#xff1a;會把引號的內容當成整體來看待&#xff0c;允許通過 符號引用其他變量值單引 號 …

邏輯回歸知識點

一、邏輯回歸概念 邏輯回歸(Logistic Regression)是一種廣泛應用于分類問題的統計方法&#xff0c;尤其適用于二分類問題。 注意: 盡管名稱中有"回歸"二字&#xff0c;但它實際上是一種分類算法。 解決二分類的問題。 API&#xff1a;sklearn.linear_model.Logis…

GCC內存占用統計使用指南

GCC 的 --print-memory-usage 選項用于在編譯鏈接過程中輸出程序的內存占用統計信息&#xff0c;特別適用于嵌入式開發等內存受限的場景。其主要作用和輸出內容如下&#xff1a; 核心功能 顯示內存分段占用 輸出程序在目標設備內存中的分段占用情況&#xff0c;通常包括&#…