Skip to content

Commit fe09d3a

Browse files
committed
Algorithms - Alphabetize String
1 parent 7599ddb commit fe09d3a

File tree

4 files changed

+71
-23
lines changed

4 files changed

+71
-23
lines changed

README.md

+10-3
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,17 @@
1818
3. Reverse String
1919
- EXAMPLE
2020
1. cat -> tac
21-
2. lovely -> ylevol
21+
2. rain -> niar
2222

23-
4. Repeat String
23+
4. Alphabetize String
24+
- EXAMPLE
25+
1. cat -> act
26+
2. rain -> ainr
27+
28+
5. Repeat String
2429
- EXAMPLE
2530
1. cat, 5 -> catcatcatcatcat
26-
2. rain, 4' -> rainrainrainrain
31+
2. rain, 4' -> rainrainrainrain
32+
33+
2734

algorithms.js

+41-11
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,24 @@ function nameSwap()
44
// 'Doe Jane' -> 'Jane Doe'
55
// 'Nowak Jan' -> 'Jan Nowak'
66

7+
var nameSwapString = document.getElementById("nameSwap").value;
8+
79
/*
10+
//option 1 :
811
var stringToArray = nameSwapString.split(' ');
912
var reverseArray = stringToArray.reverse();
1013
var reverseString = reverseArray.join(' ');
1114
document.getElementById("swapNameResult").innerHTML = reverseString;
1215
*/
1316

14-
//Indexes
17+
//option 2 : Indexes
1518
/*
1619
var array = nameSwapString.split(' ');
1720
var result = array[1] + ' ' + array[0];
1821
document.getElementById("swapNameResult").innerHTML = result;
1922
*/
2023

21-
var nameSwapString = document.getElementById("nameSwap").value;
22-
24+
//option 3 : One line
2325
var nameSwapResult = nameSwapString.split(' ').reverse().join(' ');
2426
document.getElementById("swapNameResult").innerHTML = nameSwapResult;
2527
}
@@ -43,12 +45,25 @@ function palindrome()
4345
function reverseString()
4446
{
4547
//EXAMPLE:
46-
//1. cat, 5 -> catcatcatcatcat
47-
//2. rain, 4' -> rainrainrainrain
48+
//1. cat -> tac
49+
//2. rain -> niar
4850

4951
var reverseString = document.getElementById("reverseString").value;
5052

5153
var reverseStringResult = reverseString.split('').reverse().join('');
54+
55+
//option 2:
56+
//var reverseStringResult = [...reverseString].reverse().join('');
57+
58+
//option 3 - for loop:
59+
/*
60+
var reverseStringResult = '';
61+
for (var i = reverseString.length-1; i >= 0 ; i--)
62+
{
63+
reverseStringResult += reverseString;
64+
}
65+
*/
66+
5267
document.getElementById("reverseStringResult").innerHTML = reverseStringResult;
5368
}
5469

@@ -59,23 +74,23 @@ function repeatString()
5974
//'cat', 5 -> 'catcatcatcatcat'
6075
//'rain, 4' -> 'rainrainrainrain'
6176

62-
var str = document.getElementById("repeatStringString").value;
63-
var num = document.getElementById("repeatStringNumber").value;
77+
var repeatStringString = document.getElementById("repeatStringString").value;
78+
var repeatStringNumber = document.getElementById("repeatStringNumber").value;
6479

6580
var finalString = '';
6681

67-
if(num <= 0)
82+
if(repeatStringNumber <= 0)
6883
{
6984
finalString = ' Error. Incorrect data. ';
7085
}
7186

7287
//for loop
73-
for (var index = 1; index <=num; index++)
88+
for (var index = 1; index <=repeatStringNumber; index++)
7489
{
75-
finalString += str;
90+
finalString += repeatStringString;
7691
}
7792

78-
//or while loop
93+
//option 2 : while loop
7994
/*
8095
while (num > 0)
8196
{
@@ -87,4 +102,19 @@ function repeatString()
87102
document.getElementById("repeatStringResult").innerHTML = finalString;
88103
}
89104

105+
function alphabetizeString()
106+
{
107+
//EXAMPLE
108+
//cat -> act
109+
//rain -> ainr
110+
111+
var alphabetizeStr = document.getElementById("alphabetizeString").value;
112+
113+
var alphabetizeStrResult = alphabetizeStr.split('').sort().join('');
114+
//option 2
115+
//var alphabetizeStrResult = [...alphabetizeStr].sort().join('');
116+
117+
document.getElementById("alphabetizeStringResult").innerHTML = alphabetizeStrResult;
118+
}
119+
90120

css/main.css

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ strong
5252

5353
.white-container h1
5454
{
55-
font-size: 3rem;
55+
font-size: 2rem;
5656
padding-bottom: 1rem;
5757
}
5858

index.html

+19-8
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,23 @@ <h6> lovely -> ylevol </h6>
4646
<strong id="reverseStringResult"> ------------ </strong>
4747
</div>
4848

49+
<div class="col-4">
50+
<div class="example">
51+
<h1 class="display-4"> Alphabetize String </h1>
52+
<h3 class="lead"> EXAMPLE </h3>
53+
<h6> cat -> act </h6>
54+
<h6> rain -> ainr </h6>
55+
</div>
56+
<div class="row">
57+
<div class="col-8">
58+
<input class="form-control form-control-lg" type="text" id="alphabetizeString" name="alphabetizeString">
59+
</div>
60+
</div>
61+
<button id="btn-space" onclick="alphabetizeString()" class="btn btn-outline-info btn-lg"> Alphabetize! </button>
62+
<p class="lead"> RESULT </p>
63+
<strong id="alphabetizeStringResult"> ------------ </strong>
64+
</div>
65+
4966
<div class="col-4">
5067
<div class="example">
5168
<h1 class="display-4"> Repeat String </h1>
@@ -64,7 +81,7 @@ <h6> rain, 4' -> rainrainrainrain </h6>
6481
<button id="btn-space" onclick="repeatString()" class="btn btn-outline-info btn-lg"> Repeat! </button>
6582
<p class="lead"> RESULT </p>
6683
<strong id="repeatStringResult"> ------------ </strong>
67-
</div>
84+
</div>
6885

6986
</div>
7087

@@ -109,21 +126,15 @@ <h6> Do geese see God? </h6>
109126
<div class = "container">
110127

111128
<div class="row">
112-
<div class="col-4">
113-
<h3> JavaScript Algorithms </h3>
114-
</div>
115129
<div class="col-4">
116130
</div>
131+
117132
<div class="col-4">
118133
<div class="contact">
119134
<a target="_blank" rel="noopener noreferrer" href="https://github.com/YunaAnn/JavaScriptAlgorithms"> <i class="fas fa-code"></i></a>
120135
<a target="_blank" rel="noopener noreferrer" href="https://github.com/YunaAnn"><i class="fab fa-github" style="padding-left:10px"></i></a>
121136
</div>
122137
</div>
123-
124-
125-
126-
127138
</div>
128139

129140

0 commit comments

Comments
 (0)