ARTS-06月03日到06月09日

算法練習

題號278

你是產品經理,目前正在帶領一個團隊開發新的產品。不幸的是,你的產品的最新版本沒有通過質量檢測。由於每個版本都是基於之前的版本開發的,所以錯誤的版本之後的所有版本都是錯的。

假設你有 n 個版本 [1, 2, ..., n],你想找出導致之後所有版本出錯的第一個錯誤的版本。

你可以通過調用 bool isBadVersion(version) 接口來判斷版本號 version 是否在單元測試中出錯。實現一個函數來查找第一個錯誤的版本。你應該儘量減少對調用 API 的次數。

示例:

給定 n = 5,並且 version = 4 是第一個錯誤的版本。

調用 isBadVersion(3) -> false
調用 isBadVersion(5) -> true
調用 isBadVersion(4) -> true

所以,4 是第一個錯誤的版本。

來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/first-bad-version
著作權歸領釦網絡所有。商業轉載請聯繫官方授權,非商業轉載請註明出處。

解題

題目中的前提比較重要

你可以通過調用 bool isBadVersion(version) 接口來判斷版本號,這個函數的內部邏輯不需要考慮

題目解讀爲查找調用此函數返回true的第一個數字

class Solution:
def firstBadVersion(self, n):
"""
:type n: int
:rtype: int
"""
#### 使用折半查找
begin = 0
end = n
while(True):
mid = begin + (end - begin) // 2
if isBadVersion(mid) == False and isBadVersion(mid + 1) == True:
return mid + 1
elif isBadVersion(mid) == False and isBadVersion(mid + 1) ==False:
begin = mid
elif isBadVersion(mid) == True and isBadVersion(mid + 1) == True:


作者:凌瘋墨子
來源:CSDN
原文:https://blog.csdn.net/annilingmo/article/details/80608552
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

英文閱讀

collaborate 協作
draw insights 提出意見
appropriate 適當的

5 Data Science Projects That Will Get You Hired in 2018

文中提到了數據科學的幾個主要工作內容,以下是簡單描述

  1. Data Cleaning 數據清洗
    數據清洗是數據科學工程的入門任務,也是最耗費時間,較爲繁瑣的差事。
    If you’re unsure how to structure your project, use this outline.
    開始數據分析工程的基本大綱

Import data
Join multiple data sets
Detect missing values
Look for anomalies (1, 2, 3, “Fred”?)
Impute for missing values
Data quality assurance
This is a very general outline to get you started.

  1. Exploratory Data Analysis 探索性數據分析

EDA is important because it allows you to understand your data, and make unintended discoveries.
首先理解數據並且完成一些計劃之外的發現

  1. Interactive Data Visualizations 交互式的數據可視化
    這裏給出了創建可視化工程的一般大綱,也就是需要做的事情
    Here are some keys to creating dashboards:

Know your audience
Tell a story
Keep things simple
Use appropriate visualizations

瞭解我們的受衆
講述一個故事
保持簡單性
適當的可視化

  1. Machine Learning 機器學習
    python是機器學習的利器

這裏介紹了scikit-learn

5 Communication 溝通交流

Know your audience
Present relevant visualizations
Don’t overcrowd your slides
Make sure your presentation flows well
Tie results to a business impact (reduced cost, increased revenue)

第一點【瞭解我們的受衆】和最後一點【商業影響(降低成本或者增加收入】給我留下了深刻印象,這也是溝通的目的。無論你的可視化做的多麼漂亮,模型建立的多麼流暢,最終要落實到客戶的需求,並且將商業上的優勢展示給你的客戶,降低成本或者增加收入。

技巧呈現

分享 之前整理的git版本庫控制的主要操作命令
【操作】git版本控制流入門命令FQ#1

文章分享

brew-php-switcher 實現Mac PHP版本切換

這篇文章中你將瞭解到以下內容

查看php基本環境
理解PHP運行模式
brew-php-switcher基本使用
理解bash_profile配置文件
以及brew安裝軟件相關的命令

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章