1. 程式人生 > >LeetCode0944.刪除列以使之有序

LeetCode0944.刪除列以使之有序

0944.刪除列以使之有序

描述

給出由 N 個小寫字母串組成的陣列 A,所有小寫字母串的長度都相同。

現在,我們可以選擇任何一組刪除索引,對於每個字串,我們將刪除這些索引中的所有字元。

舉個例子,如果字串為 "``abcdef``",且刪除索引是 {0, 2, 3},那麼刪除之後的最終字串為 "``bef``"

假設我們選擇了一組刪除索引 D,在執行刪除操作之後,A 中剩餘的每一列都是有序的。

形式上,第 c 列為 [A[0][c], A[1][c], ..., A[A.length-1][c]]

返回 D.length 的最小可能值。

例項

輸入:["cba","daf","ghi"]
輸出:1
輸入:["a","b"]
輸出:0
輸入:["zyx","wvu","tsr"]
輸出:3

提示

  1. 1 <= A.length <= 100
  2. 1 <= A[i].length <= 1000

題解

  • 這裡的有序特指增序
  • 允許非嚴格遞增
  • 坑爹的題目…真沒意思厚
  • 兩次迴圈,第一個迴圈檢查列,第二個迴圈檢查列內情況
public static int minDeletionSize(String[] A) {
        int strLength = A[0].length();
        int aLength = A.length;
        int counter =
0; if (aLength <= 1) return 0; for (int i=0;i<strLength;i++){ char c1 = A[0].charAt(i); char c2;// = A[1].charAt(i); for (int j = 0; j < aLength-1; j++) { c2 = c1; c1 = A[j+1].charAt(i); if
(c1 <= c2){ counter++; break; } } } return counter; }

相關推薦

LeetCode0944.刪除使有序

0944.刪除列以使之有序 描述 給出由 N 個小寫字母串組成的陣列 A,所有小寫字母串的長度都相同。 現在,我們可以選擇任何一組刪除索引,對於每個字串,我們將刪除這些索引中的所有字元。 舉個例子,如果

[Swift Weekly Contest 111]LeetCode944. 刪除使有序 | Delete Columns to Make Sorted

form same may urn The bcd pos 指定 hose We are given an array A of N lowercase letter strings, all of the same length. Now, we may choose

leetcode 944. 刪除使有序

啊啊啊啊,好煩啊,第三道題目超了10分鐘做出來了,如果不寫前兩道題的部落格,應該可以做出3道題的,這道題為的思路是把每個字串的對應字元取出來然後複製一份,一份進行sort排序,然後比較,如果不同,需要刪除的個數就要加一, class Solution { public: int m

Leetcode-944 Delete Columns to Make Sorted(刪除使有序)

1 class Solution 2 { 3 public: 4 bool order(string A) 5 { 6 for(int i = 0; i < A.size()-1; i ++) 7

LeetCode 944 delete-columns-to-make-sorted 刪除使有序

題目連結 LeetCode 周賽 111場 D題 https://leetcode-cn.com/problems/delete-columns-to-make-sorted/ 題意         吐槽一下111場周賽,2個簡單題就不說了

LeetCode 944. 刪除使有序(C、C++、python)

給出由 N 個小寫字母串組成的陣列 A,所有小寫字母串的長度都相同。 現在,我們可以選擇任何一組刪除索引,對於每個字串,我們將刪除這些索引中的所有字元。 舉個例子,如果字串為 "abcdef",且刪除索引是 {0, 2, 3},那麼刪除之後的

資料庫MySQL如何新增、刪除

文章目錄 新增/刪除 列 1. 新增單列 2. 新增多列:無法指定FIRST/AFTER、只能預設為最後方。 3. 刪除單列 4. 刪除多列 新增/刪除 列 1

如何改裝element-ui表格,使擁有增加和刪除功能成為動態表格

       最近專案需要使用一個動態表格,使之擁有增加刪除以及大表單的儲存功能,介面框架定的是element-ui,仔細找了找,並沒有現成的動態表格可以使用,沒辦法,只能開啟改裝之路。我的思路是這樣的,就是在拿到後臺資料時,在末尾在加上一個標記空陣列,使

面試題精選(84):使序列有序的最少交換次數(minimum swaps) + 刪除序列中所有重複的元素

題目描述:(minimum swaps) Given a sequence, we have to find the minimum no of swaps required to sort the sequence. 分析: formula:  no. of elemen

pandasdataframe移動複製刪除

pandas的DataFrame非常靈活,我們可以快速的移動、複製、刪除列,今天就用案例來說明一下具體的工作是如何完成的。 首先我們建立一個dataframe 列印一下: 增加列,我們可以把df當作一個object,給它增加一個屬性c,如下: 這

mysqltable關鍵字:alter (修改表,列名,增加修改刪除) (一)

1,修改表名 ---- alter table 舊名 rename (to)新名,下面2種方式都可以 alter table my_contacts rename students; alter

C#集合有序列表

使用 需要 枚舉 元素 get for 存在 包含 自定義類   如果需要基於鍵對所需集合排序,就可以使用SortedList<TKey,TValue>類。這個類按照鍵給元素排序。這個集合中的值和鍵都可以使用任何類型。定義為鍵的自定義類型需要實現ICompar

sql添加刪除,修改

數據庫 str alter 代碼 div lena lte eight 設計器 有時候,當數據庫裏面有數據了,再到設計器裏面刪除列,就刪不掉。只能用代碼刪除。 alter table tableName drop column columnName 添加列

微信小程序多選擇器range-key

微信小程序 data picker span key con back column tip <picker mode="multiSelector" bindchange="bindMultiPickerChange2" bindcolumnchange="bin

Oracle根據【日期】組,其他條件根據PIVOT行轉使每個日期條件關聯的其他數據只有一行。

col acl time pivot per clas 一行 crop group select OPER_TIME, MICROPAY, REFUND from ( select trunc(oper_time) oper_time,

Linux中如何恢復rm命令誤刪除的文件extundelete編譯安裝及使用

可用 並且 地址 cat inode res 丟失 lin 所在 1、下載extundelete包,安裝依賴 我用的是Centos系統,在安裝extundelete之前需要安裝e2fsprogs,e2fsprogs-libs,e2fsprogs-devel。 yum in

打開新窗口,並使居中

pan idt height 水平 eba new ihe 打開 在線 常用用於彈出類似在線咨詢窗口這種或者新窗口視頻 <span onclick="openWin">打開新窗口</span><script> function open

簡單配置nginx使支持pathinfo

str blog path_info include 簡單配置 clas oca split bsp 只需要修改3個地方就可以了,親測成功,看代碼有註解 location ~ \.php { #去掉$ root H:/PHPServer/

點擊頁面的按鈕,使打開一個新窗口,加載一個頁面的方法有哪些呢?

body del .html blank oca pos type target put 1.<base target="_blank" /> 頁面只要有a標簽,都會打開一個新的頁面; 2.<input type=‘button‘ value=‘new‘

DataTable 修改列名 刪除 調整順序

post pre tor remove highlight 修改 開始 arp 列名 DataTable myDt =dt; //刪除列 myDt.Columns.Remove("minArea"); myDt.Columns.Remove("maxArea");