整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          html文件刪除如何恢復?恢復誤刪html文件教程

          tml文件即超文本標記語言文件文檔,是擴展名、后綴名為html的文件。超文本標記語言的結構包括頭部分(Head)、和主體部分(Body),其中頭部(head)提供關于網頁的信息,主體(body)部分提供網頁的具體內容。html文件能夠被多種網頁瀏覽器讀取,傳遞。我們可以使用電腦上自帶的記事本進行編輯htm文件。那么html文件刪除如何恢復?

          通常情況下當您從電腦存儲設備中刪除html文件時,該html文件會保存在回收站中。 可以根據需要通過單擊還原選項將其還原。 但是不好運的情況下,如果您清空回收站或文件未經過回收站、或使用永久刪除鍵Shift + Delete將文件刪除怎么恢復呢?我們可以通過使用數據恢復軟件來恢復。

          html文件刪除恢復步驟如下:

          1、首先到官網下載并安裝好云騎士數據恢復軟件(注意:軟件不能安裝在丟失盤中),打開云騎士數據恢復軟件,根據需要選擇恢復功能,這里選擇場景模式下的誤刪除文件。

          2、選擇好以后選擇需要恢復數據的分區,如果是外接設備則可以將它插入電腦中,或者通過讀卡器插入電腦,點擊開始掃描。

          3、掃描結束以后,你會發現有很多數據,這時我們可以通過文件類型進行查找,這里勾選其他文件類型,然后找到了需要的html格式文件。

          因為文件丟失后有可能會因各種原因受損,所以遵循先預覽再恢復原則,通過預覽模式判斷文件是否正常再進行恢復。對于無法預覽或者不支持預覽的是無法判斷數據是好的還是壞的,只能恢復出來才能進行查看的。

          4、接著在需要恢復的html文件前面進行勾選,選擇好以后點擊立即恢復按鈕。

          5、彈出設置文件路徑窗口,將文件存儲在安全區域中(如果存儲盤不夠內存,可以外接其他設備進行存儲),點擊確定按鈕。

          6、耐心等待文件導出完成,點擊查看即可查看恢復出來的html文件了。

          知識普及:

          導致html文件丟失常見幾種原因:

          采用來源于Internet的各種各樣沒經驗證的第三方應用程序也許會使您的html文件遭遇風險。

          偶爾在下載那些應用程序時,某些惡意病毒也許會進入系統并破壞html文件結構,亦或它們也許會刪除桌面上的所有html文件,因此致使大量數據丟失。

          在重新分區或調整硬盤大小時,那些html文件也許會遺失。在重新分區時,一個重大的錯誤也會刪除存儲了所必需文件的分區,例如DOC、PPT、XLSX和HTML。

          總結:以上就是html文件刪除恢復教程了,如果在軟件使用過程中有不懂的問題,可以咨詢專業的在線客服人員為您解答~

          本文來自 yqssjhf.com>> 創作不易,轉載請注明出處。

          、數組去重的幾種方法

          1、新建數組法

          2、同一個數組刪除法

          3、利用object/map/set去重法

          4、先排序再移除法

          5、Filter與indexOf法

          二、數組去重代碼實現

          1、新建數組法,即新建立一個數組,用來存儲結果,將原數組項逐個與新數組的成員進行比較,如果新數組中不存在就添加到新數組。時間復雜度:O(n^2)

          圖1-新建數組去重法

          2、同一個數組刪除法,兩個循環,將數組中的每個元素與其他未與自己比較的元素進行比較,遇到有重復時,將自己刪除,并進入下一個循環。這種方式相對效率較高,也不用新數組占用空間。時間復雜度:O(logN)

          圖2-數組刪除去重復從后往前遍歷

          圖3-數組刪除去重復從前往后遍歷

          注意:若是從前往后則需要對length和i進行--處理,因為數組的長度減少了。

          3、利用object/map/set去重法,利用數據結構key是唯一的特性和set里不允許重復value來去重,這種方式很討巧,但是效率也不高。時間復雜度:O(n^2)。

          圖4-數組去重復Object法

          圖5-數組去重復Map與Set法

          4、先排序再移除法,先將數組排好序,然后從后至前或從前往后逐個與下一個進行比較,如果遇到相同時就刪除當前項,進下一個比較。時間復雜度:O(n^2)

          圖6-數組去重先排序再刪除法,自后往前

          圖7-數組去重先排序再刪除法,自前往后

          自前往后遍歷也要注意相同的問題,即length與i要相應減少。

          5、Filter結合IndexOf法,利用indexOf返回數組中第一次出現目標項下標的特點,當內容相同且下標相同表示的就是是不重復的新項,就追加到新數組中,如果查找到但下標不相說明重復了,跳出進行下一個比較。時間復雜度:O(n^2)

          最簡的方式:a.filter((item, i) => i === a.indexOf(item)),這種寫法極簡,但是效率不高,不建議這么用。具體原理實現如下:

          圖8-數組去重indexOf法,continue略微優化

          圖8-數組去重模擬indexOf法,break略有優化

          這兩種都比極簡法好,極簡法是沒做任何優化,但因為filer與indexOf都是原生的方法,效率也還可以。

          附:filter與indexOf實現源碼:

          家好,很高興又見面了,我是姜茶的編程筆記,我們一起學習前端相關領域技術,共同進步,也歡迎大家關注、點贊、收藏、轉發,您的支持是我不斷創作的動力

          鐵子們!從 2024/07/26 開始,我們進入算法專題篇的學習啦 (?? 沒特別說明的情況下復雜度僅指時間復雜度)。學習計劃如下:

          1?? 每日一題;

          2?? 學習順序是由易到難;

          3?? 題目按照數據結構進行分類;

          4?? 每個類型的題目預計安排 100 道題(簡單/中等/困難各 33 道);

          題目

          26. 刪除有序數組中的重復項

          給你一個 非嚴格遞增排列 的數組 nums ,請你 原地 刪除重復出現的元素,使每個元素 只出現一次 ,返回刪除后數組的新長度。元素的 相對順序 應該保持 一致 。然后返回 nums 中唯一元素的個數。

          考慮 nums 的唯一元素的數量為 k ,你需要做以下事情確保你的題解可以被通過:

          • 更改數組 nums ,使 nums 的前 k 個元素包含唯一元素,并按照它們最初在 nums 中出現的順序排列。nums 的其余元素與 nums 的大小不重要。
          • 返回 k 。

          示例 1:

          輸入:nums = [1,1,2]
          輸出:2, nums = [1,2,_]
          解釋:函數應該返回新的長度 2 ,并且原數組 nums 的前兩個元素被修改為 1, 2 。不需要考慮數組中超出新長度后面的元素。

          示例 2:

          輸入:nums = [0,0,1,1,1,2,2,3,3,4]
          輸出:5, nums = [0,1,2,3,4]
          解釋:函數應該返回新的長度 5 , 并且原數組 nums 的前五個元素被修改為 0, 1, 2, 3, 4 。不需要考慮數組中超出新長度后面的元素。

          提示:

          • 1 <= nums.length <= 3 * 104
          • -104 <= nums[i] <= 104
          • nums 已按 非嚴格遞增 排列

          分析/求解

          要解決這個問題,可以使用雙指針技巧。這個方法非常適合處理需要原地修改數組的情況。以下是詳細的解釋和多種解決方法:

          方法一:雙指針法

          雙指針法使用兩個指針,一個用于遍歷整個數組,另一個用于標記新數組的末尾。遍歷過程中,如果遇到新元素(與前一個元素不同),就將這個新元素放到新數組的末尾。

          時間復雜度:O(n),空間復雜度:O(1)

          function removeDuplicates(nums) {
              if (nums.length === 0) return 0;
          
              let i = 0;
              for (let j = 1; j < nums.length; j++) {
                  if (nums[j] !== nums[i]) {
                      i++;
                      nums[i] = nums[j];
                  }
              }
              return i + 1;
          }
          

          方法二:使用 Set 數據結構

          雖然這種方法不符合“原地”修改數組的要求,但它簡單易懂且可以用于理解去重過程。

          時間復雜度:O(n),空間復雜度:O(n)

          function removeDuplicates(nums) {
              const uniqueNums = Array.from(new Set(nums));
              for (let i = 0; i < uniqueNums.length; i++) {
                  nums[i] = uniqueNums[i];
              }
              return uniqueNums.length;
          }
          

          方法三:遞歸法

          這種方法是為了展示不同的思維方式,但它不如雙指針法高效。遞歸方法在實際應用中并不推薦,因為它沒有雙指針法簡潔且高效。

          時間復雜度:O(n),空間復雜度:O(n)(由于遞歸調用棧)

          function removeDuplicates(nums) {
              function helper(index) {
                  if (index >= nums.length) return index;
                  let newIndex = helper(index + 1);
                  if (index > 0 && nums[index] === nums[index - 1]) {
                      for (let i = index; i < newIndex - 1; i++) {
                          nums[i] = nums[i + 1];
                      }
                      newIndex--;
                  }
                  return newIndex;
              }
              return helper(1);
          }
          

          總結

          在實際應用中,推薦使用雙指針法,因為它不僅簡單易懂,而且符合題目要求的原地修改,并且具有 O(n) 的時間復雜度和 O(1) 的空間復雜度。

          附件:

          最后

          如果有任何問題或建議,歡迎在評論區留言交流!祝你編程愉快!


          主站蜘蛛池模板: 亚洲国产一区二区三区青草影视| 久久99热狠狠色精品一区| 亚洲日本中文字幕一区二区三区| 久久亚洲日韩精品一区二区三区 | 无码人妻一区二区三区免费n鬼沢 无码人妻一区二区三区免费看 | 久久99精品国产一区二区三区 | 无码人妻精品一区二区蜜桃| 亚洲区精品久久一区二区三区| 麻豆AV天堂一区二区香蕉| 在线观看精品视频一区二区三区| 中文字幕亚洲一区二区三区| 国产波霸爆乳一区二区 | 免费高清在线影片一区| 欧洲精品一区二区三区| 久久精品国产一区二区三区| 亚洲综合一区二区精品导航| 国语对白一区二区三区| 中文字幕日韩人妻不卡一区| 亚洲熟妇无码一区二区三区| 乱中年女人伦av一区二区| 青青青国产精品一区二区| 免费萌白酱国产一区二区| 人妻久久久一区二区三区| 成人在线视频一区| 精品人伦一区二区三区潘金莲| 一区二区三区国模大胆| 精品一区二区三区免费毛片爱| 国产一区高清视频| 无码一区二区三区免费| 视频精品一区二区三区| 日本一区频道在线视频| 日韩精品人妻一区二区中文八零 | 好湿好大硬得深一点动态图91精品福利一区二区| 国产精品小黄鸭一区二区三区| 国产伦精品一区二区三区不卡 | 国产综合视频在线观看一区| 国产一区二区三区高清在线观看 | 一区三区三区不卡| 国产精品福利一区二区久久| 中文字幕精品亚洲无线码一区应用| 国产精品免费综合一区视频|