AMcoder - javascript, python, java, html, php, sql

Փոխել ցուցակի սկզբնական տարրը՝ պահպանելով հաջորդականությունը [կրկնօրինակ]

Ես ունեմ ալգորիթմ, որը ցույց է տալիս ցուցակը որոշակի հերթականությամբ, օրինակ.

[0 4 3 2 1 5]

Ես ուզում եմ վերադասավորել ցուցակը, որպեսզի սկսվի «1» տարրով և պահպանի հաջորդականությունը, այնպես որ իմ արդյունքը կլինի.

[1 5 0 4 3 2]

Ես փնտրել և փորձել եմ տարբեր հնարավորություններ, բայց ես դեռ պայքարում եմ դրա հետ:

Ինչպե՞ս կարող եմ այս աշխատանքը կատարել:

25.01.2021

  • Պտտեցնել՝ lst[:] = lst[4:] + lst[:4] 25.01.2021
  • @schwobaseggl օգտագործեք index() 4-ի փոխարեն 25.01.2021
  • Այնուհետև դա այլևս հասարակ մեկնաբանության արժանի մեկ տող չէ, եթե ես այն երկու անգամ չանվանեմ (չնայած անվանված առաջադրանքներին) =) 25.01.2021

Պատասխանները:


1
lst = [0, 4, 3, 2, 1, 5]

այն դիրքի մեջ պտտելու համար.

i = lst.index(1)
lst = lst[i:] + lst[:i]
25.01.2021
  • Կարող է միակողմանի երթևեկել Walrus օպերատորով՝ lst = lst[(p:=lst.index(1)):] + lst[:p] 25.01.2021
  • Ես լավ տեղյակ եմ, ինչպես երևում է իմ մեկնաբանություններում։ Այնուամենայնիվ, այն աշխատում է միայն Python-ի ամենավերջին տարբերակներում և չի դարձնում այն ​​ավելի ընթեռնելի կամ կատարողական: 25.01.2021
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..