每日程式設計(二十六)

2021-09-12 02:29:18 字數 444 閱讀 2323

如果不存在下乙個更大的排列,則將數字重新排列成最小的排列(即公升序排列)。

必須原地修改,只允許使用額外常數空間。

以下是一些例子,輸入位於左側列,其相應輸出位於右側列。

1,2,3 → 1,3,2

3,2,1 → 1,2,3

1,1,5 → 1,5,1

分析:很明顯從後想前遍歷,直到找到乙個前面的數比後面的小,然後在他的後面找到他應該在的位置,將它後面的數全部交換。leetcode上官方結題,有個動態**釋的很清楚

**:

func nextpermutation(nums int)  

j:=n-1

if i>=0

swap(nums,i,j)

}j=n-1

i=i+1

for i}func swap(nums int,i,j int)

UNIX網路程式設計 執行緒(二十六)

unix網路程式設計 執行緒 一 概述 乙個伺服器的父程序accept乙個連線,fork 乙個子程序,該子程序處理與該連線對端的客戶之間的通訊。但是fork呼叫卻存在一些問題。1 fork是昂貴的。當今的實現使用稱為寫實複製的技術,用以避免在子程序切實需要自己的副本之前把父程序的資料空間按複製到子程...

二十六 遮蔽中斷

1.6410和210採用向量中斷,由硬體執行。有兩組中斷源,相應的控制暫存器也有多個 2.6410和210使能和遮蔽是分開的暫存器 3.遮蔽控制暫存器的讀寫操作從而遮蔽中斷,都是寫入全1 4.6410的 遮蔽中斷,要操作兩個暫存器,目的是將使能中斷暫存器的相關位清除 define vic0inten...

二十六 裝飾器

裝飾器 由於函式也是乙個物件,而且函式物件可以被賦值給變數,所以,通過變數也能呼叫該函式。def now print 2015 3 25 f now f 2015 3 25 函式物件有乙個 name 屬性,可以拿到函式的名字 now.name now f.name now 現在,假設我們要增強 no...