Merge pull request #1434 from TheAlgorithms/revert-1432-revert-1429-Development

Revert "Revert "Fixed code smells after running sonarqube on the project""
This commit is contained in:
Du Yuanchao 2020-08-25 21:26:26 +08:00 committed by GitHub
commit 452fa5659c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 53 additions and 50 deletions

View File

@ -75,8 +75,8 @@ class LFUCache<T> {
public LFUCache(int capacity) { public LFUCache(int capacity) {
this.capacity = capacity; this.capacity = capacity;
size = 0; size = 0;
freq = new TreeMap<Integer, DLL>(); freq = new TreeMap<>();
map = new HashMap<Integer, Node>(); map = new HashMap<>();
System.out.println("LFUCache initialised with capacity: " + capacity); System.out.println("LFUCache initialised with capacity: " + capacity);
} }
@ -145,8 +145,8 @@ class LFUCache<T> {
dll.deleteNode(dll.tail.pre); dll.deleteNode(dll.tail.pre);
if (dll.len == 0 && lowest != 1) if (dll.len == 0 && lowest != 1)
freq.remove(lowest); freq.remove(lowest);
DLL freq_one = freq.computeIfAbsent(1, k -> new DLL()); DLL freqOne = freq.computeIfAbsent(1, k -> new DLL());
freq_one.addToHead(node); freqOne.addToHead(node);
} }
} }

View File

@ -63,7 +63,6 @@ public class LRUCache<T> {
System.out.println("Cache set to 0 capacity. No elements will be cached"); System.out.println("Cache set to 0 capacity. No elements will be cached");
} }
T currentValue = cache.get(key);
if (!cache.containsKey(key)) { if (!cache.containsKey(key)) {
cache.put(key, value); cache.put(key, value);
System.out.println("Adding new key:" + key + " to cache"); System.out.println("Adding new key:" + key + " to cache");

View File

@ -5,25 +5,25 @@ public class CaesarBruteForce {
/** /**
* Recursively Brute forces a parsed encrypted text, trying out all shifting keys from 1-26, printing out all decryption attempts * Recursively Brute forces a parsed encrypted text, trying out all shifting keys from 1-26, printing out all decryption attempts
* @param message (String) The encrypted text. * @param message (String) The encrypted text.
* @param Key (int) The key used to decrypt the encrypted text and is increment upon a recursive call. * @param key (int) The key used to decrypt the encrypted text and is increment upon a recursive call.
* @return (String) Concatenated string of all decryption attempts (For unit testing purposes). * @return (String) Concatenated string of all decryption attempts (For unit testing purposes).
*/ */
public String decrypt(String message, int Key) { public String decrypt(String message, int key) {
final String LETTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; final String LETTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
if (Key > 26){ System.out.println(); return null; } if (key > 26){ System.out.println(); return null; }
StringBuilder plainText = new StringBuilder(); StringBuilder plainText = new StringBuilder();
for (char character : message.toUpperCase().toCharArray()) { for (char character : message.toUpperCase().toCharArray()) {
int index = LETTERS.indexOf(character); int index = LETTERS.indexOf(character);
if (index != -1) { if (index != -1) {
index -= Key; index -= key;
//Wrap around index value range[1-26] //Wrap around index value range[1-26]
if (index < 0) { index += LETTERS.length(); } if (index < 0) { index += LETTERS.length(); }
plainText.append(LETTERS.toCharArray()[index]); plainText.append(LETTERS.toCharArray()[index]);
} else { plainText.append(character); } } else { plainText.append(character); }
} }
System.out.println(String.format("Current Decryption Key %d : %s", Key, plainText)); System.out.println(String.format("Current Decryption Key %d : %s", key, plainText));
return plainText.append(decrypt(message, Key+1)).toString(); return plainText.append(decrypt(message, key+1)).toString();
} }
} }

View File

@ -12,7 +12,7 @@ public class HexadecimalToBinary {
public String hexToBin (String hexStr) { public String hexToBin (String hexStr) {
String binaryString = "", hexaNumbers = "0123456789ABCDEF", String binaryString = "", hexaNumbers = "0123456789ABCDEF",
DecimalStr ="", binaryStringBefore ="" , binaryStringAfter = ""; decimalStr ="", binaryStringBefore ="" , binaryStringAfter = "";
int indexOfHex, decimalNumber = 0, k = 1, n =1, z=1, decimalNumberBefore = 0 int indexOfHex, decimalNumber = 0, k = 1, n =1, z=1, decimalNumberBefore = 0
, decimalNumberAfter = 0; , decimalNumberAfter = 0;
char letter; char letter;
@ -48,12 +48,12 @@ public class HexadecimalToBinary {
String decimalNumberAfterStr = String.valueOf(decimalNumberAfter); String decimalNumberAfterStr = String.valueOf(decimalNumberAfter);
DecimalStr = decimalNumberBeforeStr + '.' + decimalNumberAfterStr; decimalStr = decimalNumberBeforeStr + '.' + decimalNumberAfterStr;
} }
int pointPositionDec = DecimalStr.indexOf("."); int pointPositionDec = decimalStr.indexOf(".");
/** /**
* Check whether the result contains a floating point or not * Check whether the result contains a floating point or not
*/ */

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
/** /**
* Binary tree for general value type, without redundancy * Binary tree for general value type, without redundancy
@ -8,7 +8,7 @@ package com.dataStructures;
public class BinaryTree<T extends Comparable> { public class BinaryTree<T extends Comparable> {
private final T data; private final T data;
private BinaryTree right, // the upper binary tree private BinaryTree<T> right, // the upper binary tree
left; // the lower binary tree left; // the lower binary tree
public BinaryTree(T data) { public BinaryTree(T data) {
@ -21,35 +21,38 @@ public class BinaryTree<T extends Comparable> {
} }
/** /**
* inserts a new value in it's correspondant place * inserts a new value in it's correspondent place
* *
* @param newDataValue value of the new binary tree to add on this tree * @param newDataValue value of the new binary tree to add on this tree
*/ */
public void insert(T newDataValue) { public void insert(T newDataValue) {
this.insert(new BinaryTree(newDataValue)); this.insert(new BinaryTree<>(newDataValue));
} }
/** /**
* inserts a new binary tree in it's correspondant place * inserts a new binary tree in it's correspondent place
* *
* @param newData new value to add on this tree * @param newData new value to add on this tree
*/ */
public void insert(BinaryTree newData) { public void insert(BinaryTree<T> newData) {
int cpr = newData.data.compareTo(this.data); //new value comparission respect to actual value int cpr = newData.data.compareTo(this.data); //new value comparission respect to actual value
if (cpr < 0) if (cpr < 0) {
if (this.left == null) if (this.left == null) {
this.setLeft(newData); this.setLeft(newData);
else } else {
this.left.insert(newData); this.left.insert(newData);
else if (cpr > 0) }
if (this.right == null) } else if (cpr > 0) {
if (this.right == null) {
this.setRight(newData); this.setRight(newData);
else } else {
this.right.insert(newData); this.right.insert(newData);
else }
} else {
System.out.println("Redundant value, not added"); System.out.println("Redundant value, not added");
}
} }
/** /**
@ -58,8 +61,8 @@ public class BinaryTree<T extends Comparable> {
* @param data Searched value * @param data Searched value
* @return Binary tree which contains the value, null if it doesn't exist * @return Binary tree which contains the value, null if it doesn't exist
*/ */
public BinaryTree search(T data) { public BinaryTree<T> search(T data) {
int cpr = data.compareTo(this.data); //new value comparission respect to actual value int cpr = data.compareTo(this.data); //new value comparison respect to actual value
if (cpr < 0) { if (cpr < 0) {
if (this.left == null) if (this.left == null)
@ -113,19 +116,19 @@ public class BinaryTree<T extends Comparable> {
return data; return data;
} }
public BinaryTree getRight() { public BinaryTree<T> getRight() {
return right; return right;
} }
public void setRight(BinaryTree right) { public void setRight(BinaryTree<T> right) {
this.right = right; this.right = right;
} }
public BinaryTree getLeft() { public BinaryTree<T> getLeft() {
return left; return left;
} }
public void setLeft(BinaryTree left) { public void setLeft(BinaryTree<T> left) {
this.left = left; this.left = left;
} }
} }

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import java.io.Serializable; import java.io.Serializable;
import java.util.*; import java.util.*;
@ -18,14 +18,15 @@ import java.util.*;
*/ */
public class DisjointSet<T> implements Serializable { public class DisjointSet<T> implements Serializable {
private static final long serialVersionUID = 3134700471905625636L; private static final long serialVersionUID = 3134700471905625636L;
private static final String elementKey = "element";
private Map<T, Node<T>> nodeMap = new HashMap<>(); private final Map<T, Node<T>> nodeMap = new HashMap<>();
/** /**
* Add an element to the disjoint-set forests as a set. * Add an element to the disjoint-set forests as a set.
*/ */
public void makeSet(T element) { public void makeSet(T element) {
checkNotNull(element, "element"); checkNotNull(element, elementKey);
nodeMap.putIfAbsent(element, new Node<>()); nodeMap.putIfAbsent(element, new Node<>());
} }
@ -36,8 +37,8 @@ public class DisjointSet<T> implements Serializable {
* Rank is an upper bound on the height of node. * Rank is an upper bound on the height of node.
*/ */
public void union(T left, T right) { public void union(T left, T right) {
checkNotNull(left, "element"); checkNotNull(left, elementKey);
checkNotNull(right, "element"); checkNotNull(right, elementKey);
Node<T> leftNode = nodeMap.get(left), Node<T> leftNode = nodeMap.get(left),
rightNode = nodeMap.get(right); rightNode = nodeMap.get(right);

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import com.types.Queue; import com.types.Queue;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
/** /**
* This file contains an implementation of an integer only queue which is extremely quick and * This file contains an implementation of an integer only queue which is extremely quick and

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import java.io.Serializable; import java.io.Serializable;
import java.util.EmptyStackException; import java.util.EmptyStackException;

View File

@ -1,4 +1,4 @@
package com.matchings.stableMatching; package com.matchings.stablematching;
public class GaleShapley { public class GaleShapley {

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import com.types.Queue; import com.types.Queue;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import static org.junit.Assert.*; import static org.junit.Assert.*;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import org.junit.Test; import org.junit.Test;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;

View File

@ -1,4 +1,4 @@
package com.dataStructures; package com.datastructures;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;

View File

@ -1,4 +1,4 @@
package com.matchings.stableMatching; package com.matchings.stablematching;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;