python 多條件 選擇 算法_python部署python算法 - 快速尋找滿足條件的兩個數

題目前提是一定存在這樣兩個數

解法一就不寫了...一般想不到吧

一開始想到的是解法二最后的用hash表

(其實是想到創建一個跟target一樣大的數組啦..存在就寫入index,但是要全部找出,那得二維數組,但是后面想到target要是很大的話,是不是浪費空間了...所以改成Dict)

后面發現題目只要求給出兩個數就好了啊- -

擴展問題比較有意思

找三個應該不難,其它還不清楚,有想再補充...

1.二維數組def find_pair(A, target):

B = [[] for i in range(target + 1)]

for i in range(0, len(A)):

if A[i] <= target:

B[A[i]].append(i)

for i in range(0, target / 2 + 1):

if len(B[i]) != 0 and len(B[target - i]) != 0:

print(i, B[i], target-i, B[target-i])

if __name__ == "__main__":

A = [0, 1, 1, 2, 11, 8, 3, 4, 5, 6, 7, 8, 9, 10]

find_pair(A, 9)

2.字典

電腦技術網認為此文章對《python部署python算法 - 快速尋找滿足條件的兩個數》說的很在理。def find_pair(A, target):

B = {}

for i in range(0, len(A)):

if A[i] <= target:

if not B.has_key(A[i]):

B[A[i]] = [i]

else:

B[A[i]].append(i)

for i in range(0, target / 2 + 1):

if B.has_key(i) and B.has_key(target-i):

print(i, B[i], target-i, B[target-i])

if __name__ == "__main__":

A = [0, 1, 1, 2, 11, 8, 3, 4, 5, 6, 7, 8, 9, 10]

find_pair(A, 9)

3.這種方法都已經重新排序了,不知道書上還返回索引有什么意義...排序偷懶直接用內置的啦...def find_pair(A, target):

A.sort()

i, j = 0, len(A) - 1

while i < j:

s = A[i] + A[j]

if s == target:

print(i, A[i], j, A[j])

i += 1

j -= 1

elif s < target:

i += 1

else:

j -= 1

if __name__ == "__main__":

A = [0, 1, 1, 2, 11, 8, 3, 4, 5, 6, 7, 8, 9, 10]

find_pair(A, 9)

更多:python部署python算法 - 快速尋找滿足條件的兩個數

https://www.002pc.comhttps://www.002pc.com/python/6000.html

你可能感興趣的python,滿足條件,算法,尋找,快速,兩個

No alive nodes found in your cluster

0踩

0 贊

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

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

相關文章

3d打印主要的切片參數類型_3D打印機切片參數詳情說明

在使用3D打印機的過程中&#xff0c;切片是一個我們無法避免要操作的步驟&#xff0c;接下來我們將簡單介紹一下切片的相關參數。底部類型設置模型打印第一層的類型&#xff0c;以適應不同打印需求Skirt模型底部不與模型接觸&#xff0c;確保擠出正常SkirtBrim與模型底部接觸&a…

西南科技大學研究生計算機,我們畢業啦……西南科技大學2020研究生畢業記!...

“各位旅客&#xff0c;列車前方到站是終點站&#xff0c;畢業。要下車的乘客&#xff0c;請帶好您的行李和貴重物品&#xff0c;準備下車。”每當畢業季來臨時&#xff0c;時間的流逝似乎開了倍速&#xff0c;掠過青春的云海&#xff0c;不因劇情的精彩而暫停。近日&#xff0…

決策樹和隨機森林算法 簡介

決策樹&#xff08;Decision Tree&#xff09; 是一種基礎的分類和回歸算法隨機森林 是由多棵決策樹集成在一起的集成學習算法 決策樹生成過程: 特征選擇決策樹生成決策樹剪枝 信息熵 用來衡量一個節點內信息的不確定性的。 信息熵越大, 不確定性越大, 樣本就越多樣, 樣本…

java 抽象類_什么是final?Java抽象類又是什么?抽象類能使用 final 修飾嗎?

第十三題講解人&#xff1a;張小龍 8.23郵箱&#xff1a;2304940425qq.com一&#xff0e;什么是final?final是java中的一個關鍵字&#xff0c;可以用來修飾變量、方法和類。用關鍵詞final修飾的域成為最終域。用關鍵詞final修飾的變量一旦賦值&#xff0c;就不能改變&…

mysql范式與反范式_MySQL 三種范式以及反范式 | 劍花煙雨江南

第一范式確保數據表中每列(字段)的原子性&#xff0c;即每個字段都是最小單位&#xff0c;不可拆分。如&#xff1a;用戶表(user)中的 user_name&#xff0c;password&#xff0c;nick_name。第二范式在第一范式的基礎上&#xff0c;保證表中的每列都與主鍵相關。如果一個關系滿…

查找微信公眾號服務器地址,手把手教大家搭建微信公眾號查題功能

最近比較主流的公眾號輸入查題功能比較火爆&#xff0c;現在手把手教大家搭建自己的公眾號查題。如下圖&#xff1a;準備&#xff1a;備案域名、服務器、公眾號域名備案、服務器申請、公眾號申請在這里就不單獨介紹了。1、配置PHP文件把兩個php代碼上傳服務器。更改api.php接口…

python更新excel內容_使用python將Excel表中的數據更新到數據庫中

代碼如下&#xff1a; # -*- coding: utf-8 -*- import pymysql import xlrd # 連接數據庫 try: db pymysql.connect(host"127.0.0.1", user"root", passwd"root", db" test", charsetutf8) except: print("could not connect t…

mysql 中文字符排序規則_mysql中字符集和排序規則說明

數據庫需要適應各種語言和字符就需要支持不同的字符集(Character Set)&#xff0c;每種字符集也有各自的排序規則(Collation)。一.字符集字符集&#xff0c;即用于定義字符在數據庫中的編碼的集合。 常見的字符集&#xff1a;utf-8 gbk 等。二.排序規則數據庫中的排序規則用來定…

sql server服務器位置,SQL語句實現查詢SQL Server服務器名稱和IP地址

獲取服務器名稱&#xff1a;SELECT SERVERPROPERTY(MachineName)select SERVERNAMEselect HOST_NAME()獲取IP地址可以使用xp_cmdshell執行ipconfig命令&#xff1a;--開啟xp_cmdshellexec sp_configureshow advanced options, 1reconfigure with overrideexec sp_configurexp_c…

如何卸載MySQL8.0.11_win10安裝mysql8.0.11卸載5.7

卸載5.7的安裝方式是免安裝版本的&#xff0c;需要卸載。1、停止服務以管理員身份啟動cmd命令窗口net stop mysql或是任務管理器找到mysql服務停止。2、刪除sc delete mysql3、windowsR 開始運行里面輸入regedit,打開注冊表,有MySQL文件夾的對MySQL文件刪除HKEY_LOCAL_MACHINE/…

django項目如何連接前端_工作筆記前端小白如何搭建前端項目

“前言&#xff0c;來到杭州差不多有兩年左右了&#xff0c;大小小做過不少項目。之前都是有技術大佬在前面抗住、作為菜雞的本人只要在大佬后面聽大佬指揮摸魚劃水就行。最近公司接到一個新項目&#xff0c;由于大佬們紛紛出走&#xff0c;于是搭建前端框架的任務就落到本人的…

mysql編碼轉換工具_mysql編碼轉換搞定

按照下面做法&#xff0c;終于成功了&#xff01;慶祝&#xff0c;紀念......背景&#xff1a;某個系統的mysql數據庫dnname采用默認的latin1字符集&#xff0c;系統升級需要將所有數據轉換成utf-8格式&#xff0c;目標數據庫為newdbname(建庫時使用utf8)方法一&#xff1a;步驟…

python基礎面試都問什么問題_基本 Python 面試問題

def Stack(object): def __init__(self): self.stack [] def push(self,value): # 進棧 self.stack.append(value) def pop(self): # 出棧 if self.stack: self.stack.pop() else: raise LookupError(stack is empty!) def is_empty(self): # 查看stack是否為空 reture bool(s…

按鈕點擊計數器存入mysql_按鈕點擊數統計計數器(PHP+MYSQL+JS)

公共頁面con.php <?php mysql_connect("localhost:3306","user","password") or die("數據庫連接失敗");mysql_select_db("click") or die("數據表連接失敗");mysql_query("set names gbk");?>…

es6去除重復項_Excel的去除重復項你真的明白原理嗎?淺嘗去除重復項的函數奧秘...

Excel函數學習&#xff1a;悟空百問の009&#xff1a;去除重復項的深入思考我們經常整理一些數據&#xff0c;數據不可以動原數據&#xff0c;又需要進行數據分析處理&#xff0c;整理&#xff0c;數據匯總&#xff0c;如何快速的找到這些重復的值&#xff0c;這成了我們很頭疼…

unit類型是什么?_面試官虛晃一槍:項目中有用過鎖嗎?能解釋一下什么是AQS?...

1 前言鎖是用來控制多個線程訪問共享資源的方式&#xff0c;一般來說&#xff0c;一個鎖能防止多個線程同時訪問共享資源(但是有些鎖可以允許多個線程并發的訪問共享資源&#xff0c;如讀寫鎖)。在以前&#xff0c;Java程序是靠synchronized來實現鎖功能的&#xff0c;而在Java…

瀏覽器里面看到的表單數據映射到python_python爬蟲入門01:教你在 Chrome 瀏覽器輕松抓包...

通過python爬蟲入門&#xff1a;什么是爬蟲&#xff0c;怎么玩爬蟲&#xff1f;我們知道了什么是爬蟲也知道了爬蟲的具體流程那么在我們要對某個網站進行爬取的時候要對其數據進行分析就要知道應該怎么請求就要知道獲取的數據是什么樣的所以我們要學會怎么抓咪咪&#xff01;哦…

sql查詢mysql參數配置_查詢參數配置

示例請求示例http(s)://rds.aliyuncs.com/?ActionDescribeParameters&DBInstanceIdrm-uf6wjk5xxxxxxx&正常返回示例XML 格式此選項設置服務器范圍內的默認填充因子值。提供填充因子是為了優化索引數據存儲和性能。fill factor50mssql2008r2此選項設置服務器范圍內的默…

python3類的繼承詳解_基于python3 類的屬性、方法、封裝、繼承詳解

下面小編就為大家帶來一篇基于python3 類的屬性、方法、封裝、繼承實例講解。小編覺得挺不錯的&#xff0c;現在就分享給大家&#xff0c;也給大家做個參考。一起跟隨小編過來看看吧Python 類Python中的類提供了面向對象編程的所有基本功能&#xff1a;類的繼承機制允許多個基類…

linux本地mysql與服務器同步數據_linux下指定mysql數據庫服務器主從同步的配置實例...

一、 概念&#xff1a;① 數據庫同步 (主從同步 --- 主數據庫寫的同時 往從服務器寫數據)② 數據庫同步 (主主同步 --- 兩臺數據庫服務器互相寫數據)二、 舉例數據庫服務器(A) 主數據庫 IP&#xff1a;192.168.1.134數據庫服務器(B) 主數據庫 IP&#xff1a;192.168.1.13…